Skip to content

很棒的榆树


Awesome Build Status

社区驱动的有用 Elm 教程、库和软件列表. 灵感来自于 awesome 列出事情. 请随意改进此列表.

-贡献指南


Learn

了解这个很棒的东西是什么.

Outdated Tutorials and books (Elm 0.18 or earlier)


Articles

阅读要点. 查看Elm官方博客: elm-lang.org/blog

Why Elm?

Miscellaneous articles

Outdated articles (Not relevant for current Elm architecture)

  • Elm for Web Developers - 为考虑迁移到 Elm 的 Web 开发人员提供的注释集合.
  • Elm & Components - 一篇博客文章描述了减少 TEA 样板文件的可能方法. 对于组件库和任何有兴趣了解函数类型可以做的令人惊奇的事情的人很有用.
  • Composing Features and Behaviours in the Elm Architecture - An article describing how to organize code that follows the Elm architecture into independent features, how to communicate between features, and how to group some of these features together to assemble larger features.
  • Getting Started with Elm - Elm 教育教程系列.
  • Elm & Guarantees - 现实地了解 Elm 相对于其他选项的优劣.

Videos

观看有关 Elm 的精彩演讲

Playlists

Miscellaneous videos

Video tutorials


News


Podcasts

收听有关 Elm 的播客

  • Elm Radio - 了解 Elm 生态系统中的工具和技术.
  • Elm Town - 关于 Elm 社区人们的播客(已过时).

Individual Podcast episodes


Testing

用于测试 Elm 应用程序的工具和库


Code generators


Package managers

共享 Elm 库的地方.


Libraries

您可以在以下位置找到数百个高质量的软件包:


Boilerplates

新 Elm 项目的良好起点.

  • create-elm-app - 创建无需构建配置的 Elm 应用程序.
  • elm-boil - 用于创建易于运行、构建和部署的 Elm 样板项目的命令行实用程序
  • elm-live - Elm 的灵活开发服务器. 包括实时重新加载.
  • elm-webpack-4-starter - Elm webpack 4 入门模板.
  • example-elm-hot-webpack - 显示 Elm 0.19 和 Webpack 热模块重新加载的示例
  • Elm Batteries - 适用于 Elm、Parcel、Cypress 和 Netlify 的项目模板和生成器
  • IHP + Elm - IHP Haskell 框架提供了内置的 Elm 样板,在前端使用 elm 并在后端使用 haskell 时非常有用

Outdated Boilerplates

  • elm-webpack-starter - 用于编写 Elm 应用程序的简单 Webpack 设置.
  • elm-app-boilerplate - Elm 应用程序的功能齐全的基础项目:Webpack、HMR、ES6、JS 和 Elm 测试、语义 UI、示例代码等.
  • elmkit - 一个基于早午餐的轻量级网络应用程序设置. 包括早午餐、热模块更换、Elm、Scss、Elm 测试.
  • elm-boilerplate - 一个简单的 Makefile 能够创建 Elm 应用程序.
  • elm-init - 新 Elm 项目的交互式设置.
  • elm-new - 基于模板生成初始项目脚手架.
  • elm-webpack-starter-kid - 一个非常非常基本的 elm + webpack 4 模板.
  • generator-elm-mdl - Yeoman 生成器,用于利用 Material Design 的简单 elm 应用程序.

Frameworks

将框架方法引入 Elm 的项目(脚手架、路线生成等)

  • elm-spa - 在 Elm 中制作单页应用程序的框架.
  • Elm Land - 用于构建 Elm 应用程序的框架.
  • Spades - 启动 Elm SPA,为现实世界做好准备.

Static analysis


Static site generators


Showcase generators


Run Elm

  • Ellie - Elm 实时编辑器
  • Elm Editor - 高级 Elm 实时编辑器
  • run-elm — 从命令行运行 Elm 代码
  • elm-instant -atom 包来尝试编辑器中的 elm 代码. 提供可视化 REPL 和预览窗格.
  • Glitch - 在浏览器中构建快速、全栈的 Web 应用程序.
  • Elm Live - Elm 的灵活开发服务器. 包括实时重新加载!
  • Elm Watch - 观看模式下的“elm make”. 快速可靠.

Compile and bundle

Unmaintained

  • grunt-elm - 将 Elm 文件编译为 JavaScript 的 Grunt 插件.

Other tools

与 Elm 相关的有用工具.


Editor plugins

代码编辑器中支持 Elm 的工具.

Atom

Emacs

  • emacs-elm-mode - Emacs 编辑器的语法突出显示、Elm REPL、Elm make 和 Elm 格式集成.

IntelliJ

Sublime Text

Vim/Neovim

Visual Studio Code

Other editors

  • elm-light-table - 语法突出显示、REPL、自动完成、包管理以及 Light Table 的更多功能.

Examples

一些用 Elm 编写的优秀应用程序.

Games

  • elm-games - 用 Elm 制作的优秀游戏列表
  • TheSpace App - 像 DApp 这样的 Reddit 地方,在 Elm 中集成了区块链和画布(通过端口).

Community and Support

哪里可以找到帮助.

  • Discourse - Elm Discourse 实例(官方论坛).
  • Reddit - Reddit 上的 Elm 板.
  • IRC - 在 elm freenode 上提问.
  • Slack - Elm 松弛社区.

Conferences


Inspired by Elm

一些受Elm影响的项目

  • Bolero - F# in WebAssembly using Elmish
  • Bucklescript-TEA - 基于 OCaml/Reason 的 Elm 架构 Bucklescript
  • Elchemy - 使用静态类型的类似 Elm 的语法编写 Elixir 代码
  • Elmish - Elm-like abstractions for F# apps
  • Fabulous - F# Functional App Development, using declarative dynamic UI
  • Iced - 受 Elm 启发的 Rust 跨平台 GUI 库
  • Redux - JavaScript 应用程序的可预测状态容器.
  • SwiftUI
  • MAUI - .NET 多平台应用程序用户界面
  • Oolong - 受 Elm 启发的 Kotlin 多平台模型-视图-更新 (MVU) 实现.

Beyond the DOM

目前 Elm 主要针对浏览器,以下是在 DOM 之外使用 Elm 的一些实验:

  • iOS 将 Elm 0.18 用于本机 iOS 应用程序的 POC
  • elmish-wasm 将 elm 编译为 Web Assembly 的 POC
  • elm-serverless 使用无服务器框架在 Cloud Functions 上运行 Elm 0.18
  • elm-posix - 使用Elm编写CLI程序

Who to follow

免费关注最新更新. 使用 #elmlang 或者 #elm 井号.

Official Elm Evan Czaplicki Richard Feldman Elm Weekly

More awesome

发现其他令人惊叹的精彩列表.

Awesome Elm 只是 Awesome thing 的一部分,在此处获取更多信息:

-太棒@sindresorhus -很棒-很棒 @bayandin


License

CC0