Elixir庫、資源和實用的內容:Awesome Elixir

jopen 10年前發布 | 88K 次閱讀 Erlang開發 Awesome Elixir

Elixir 是一個基于Erlang VM的函數式元編程語言(類似Ruby),通過動態語言的靈活的語法和宏能夠利用Erlang建立一個并發 分布 失敗冗余的高質量代碼。 Elixir提供第一層次的模式匹配pattern matching, 通過協議的多態性(類似 Clojure), 別名等。 Elixir 和 Erlang 分享同樣的字節碼和數據類型,可以直接調用Erlang。

  • Awesome Elixir

    • Actors
    • Algorithms and Datastructures
    • Authentication
    • Build Tools
    • Caching
    • Code Analysis
    • Configuration
    • CSV
    • Date and Time
    • Debugging
    • Files and Directories
    • Framework Components
    • Frameworks
    • Geolocation
    • Hardware
    • HTTP
    • Images
    • JSON
    • Markdown
    • Miscellaneous
    • Networking
    • ORM and Datamapping
    • OTP
    • Package Management
    • Protocols
    • Queue
    • Release Management
    • REST and API
    • Static Page Generation
    • Statistics
    • Testing
    • Text and Numbers
    • Third Party APIs
    • Translations and Internationalizations
    • Validations
    • XML
    • </ul> </li>

    • Resources

      • Books
      • Other Awesome Lists
      • Reading
      • Screencasts
      • Websites
      • </ul> </li>

      • Contributing
      • </ul>

        Actors

        Libraries and tools for working with actors and such.

        • exactor - Helpers for easier implementation of actors in Elixir.
        • poolboy - A hunky Erlang worker pool factory.
        • workex - Backpressure and flow control in EVM processes.

        Algorithms and Datastructures

        Libraries and implementations of algorithms and datastructures.

        • array - An Elixir wrapper library for Erlang's array.
        • hash_ring_ex - A consistent hash ring implemention for Elixir.
        • lfsr - Elixir implementation of a binary Galois Linear Feedback Shift Register.
        • fsm - Finite state machine as a functional data structure.

        Authentication

        Libraries for implementing authentications schemes.

        • oauther - An OAuth 1.0 implementation for Elixir.

        Build Tools

        Project build and automation tools.

        • ExMake - A modern, scriptable, dependency-based build tool loosely based on Make principles.
        • rotor - Super-simple build system for Elixir.
        • coffee_rotor - Rotor plugin to compile CoffeeScript files.

        Caching

        Libraries for caching data.

        • con_cache - ConCache is an ETS based key/value storage.

        Code Analysis

        Libraries and tools for analysing, parsing and manipulation codebases.

        • coverex - Coverage Reports for Elixir.
        • excoveralls - Coverage report tool for Elixir with coveralls.io integration.
        • exprof - A simple code profiler for Elixir using eprof.
        • dialyxir - Mix tasks to simplify use of Dialyzer in Elixir projects.

        Configuration

        Libraries and tools working with configurations

        • figaro - Simple Elixir project configuration.
        • conform - Easy release configuration for Elixir apps.
        • ex_conf - Simple Elixir Configuration Management.

        CSV

        Libraries and implementations working with CSV.

        • cesso - CSV handling library for Elixir.
        • csvlixir - A CSV reading/writing application for Elixir.
        • ex_csv - CSV for Elixir.

        Date and Time

        Libraries for working with dates and times.

        • chronos - An elixir date/time library.
        • timex - Easy to use Date and Time modules for Elixir.
        • timex_interval - A date/time interval library for Elixir projects, based on Timex.
        • moment - Parse, validate, manipulate, and display dates in Elixir.

        Debugging

        Libraries and tools for debugging code and applications.

        • dbg - Distributed tracing for Elixir.
        • booter - Boot an Elixir application step by step.

        Files and Directories

        Libraries and implementations for working with files and directories.

        • dir_walker - DirWalker lazily traverses one or more directory trees, depth first, returning successive file names.

        Framework Components

        Standalone component from web development frameworks.

        • flinch - Resource layer for Phoenix and Ecto projects for auto-generated RESTful CRUD APIs.
        • plug - A specification and conveniences for composable modules in between web applications.
        • webassembly - Web DSL for Elixir.

        Frameworks

        Web development frameworks.

        • dynamo - Dynamo is an experimental web framework that runs on Elixir.
        • phoenix - Elixir Web Framework targeting full-featured, fault tolerant applications with realtime functionality.
        • placid - A REST toolkit for building highly-scalable and fault-tolerant HTTP APIs with Elixir.
        • sugar - Modular web framework for Elixir.
        • weber - Web framework for Elixir inspired by Rails.

        Geolocation

        Libraries for geocoding addresses and working with latitudes and longitudes.

        • geo - A collection of GIS functions for Elixir.

        Hardware

        Hardware related things like I/O interfaces and such.

        • elixir_ale - Elixir access to hardware I/O interfaces such as GPIO, I2C, and SPI.

        HTTP

        Libraries for working with HTTP and scraping websites.

        • cauldron - An HTTP/SPDY server as a library.
        • exvcr - HTTP request/response recording library for elixir, inspired by VCR.
        • httpoison - Yet Another HTTP client for Elixir powered by hackney.
        • httpotion - Fancy HTTP client for Elixir, based on ibrowse.
        • httprot - HTTP client library.

        Images

        Libraries for working with and manipulating images.

        • exexif - Pure elixir library to extract tiff and exif metadata from jpeg files.

        JSON

        Libraries and implementations working with JSON.

        • exjson - JSON parser and genarator in Elixir.
        • jazz - Yet another library to handle JSON in Elixir.
        • joken - Encodes and decodes JSON Web Tokens.
        • jsex - json for elixir.
        • jsx - an erlang application for consuming, producing and manipulating json.
        • jsxn - jsx but with maps.

        Markdown

        Libraries and tools working with Markdown and such.

        • discount - Elixir NIF for discount, a Markdown parser.
        • earmark - Markdown parser for Elixir.

        Miscellaneous

        Useful libraries or tools that don't fit in the categories above.

        • Apex - Awesome Print for Elixir.
        • ex2ms - Translates Elixir functions to match specifications for use with ets.
        • exprint - A printf / sprintf library for Elixir. It works as a wrapper for :io.format.
        • exquisite - LINQ-like match_spec generation for Elixir.
        • ex_rated - Simple and flexible rate-limiting for API's or anything.
        • funnel - Streaming Elixir API built upon ElasticSearch's percolation.
        • mdef - Easily define multiple function heads in elixir.
        • porcelain - Porcelain implements a saner approach to launching and communicating with external OS processes from Elixir.
        • radpath - A path library for Elixir inspired by Python path libraries.
        • reprise - Simplified module reloader for Elixir.
        • spawndir - Spawns processes from the file system.

        Networking

        Libraries and tools for using network related stuff.

        • chatty - A basic IRC client that is most useful for writing a bot.
        • ExIrc - IRC client adapter for Elixir projects.
        • reagent - reagent is a socket acceptor pool for Elixir.
        • socket - Socket wrapping for Elixir.
        • wpa_supplicant - Elixir interface to the wpa_supplicant.

        ORM and Datamapping

        Libraries that implement object-relational mapping or datamapping techniques.

        • atlas - Object Relational Mapper for Elixir.
        • dexts - Disk Elixir Terms Storage, dest wrapper.
        • ecto - A database wrapper and language integrated query for Elixir.
        • exredis - Redis client for Elixir.
        • exts - Elixir Terms Storage, ets wrapper.
        • postgrex - PostgreSQL driver for Elixir.
        • ssdb_elixir - ssdb client for Elixir with focus on performance.

        OTP

        Libraries for working with OTP related things.

        • core - Library for selective receive OTP processes.
        • libex_config - Helpers for accessing OTP application configuration.

        Package Management

        Libraries and tools for package and dependency management.

        • Hex - A package manager for the Erlang ecosystem.

        Protocols

        Special protocol and format libraries.

        Queue

        Libraries for working with event and task queues.

        • exrabbit - RabbitMQ bindings and DSL for Elixir.

        Release Management

        Libraries and tools for release management.

        • exrm - Automatically generate a release for your Elixir project.
        • exrm_rpm - Create a rpm for your elixir release with ease.

        REST and API

        Libraries and web tools for developing REST-ful APIs.

        • lazymaru - Elixir copy of grape for creating REST-like APIs.
        • signaturex - Simple key/secret based authentication for APIs.
        • urna - Urna is a simple DSL around cauldron to implement REST services.

        Static Page Generation

        Tools and libraries for generating static websites and content.

        • coil - Minimalistic static content engine.

        Statistics

        Libraries around the topic statistics.

        Testing

        Libraries for testing codebases and generating test data.

        • amrita - A polite, well mannered and thoroughly upstanding testing framework for Elixir.
        • excheck - Property-based testing library for Elixir (QuickCheck style).
        • faker - Faker is pure Elixir library for generating fake data.
        • hound - Elixir library for writing integration tests and browser automation.

        Text and Numbers

        Libraries for parsing and manipulating text and numbers.

        • calliope - An elixir haml parser.
        • cldr - cldr is a library to use information from CLDR data.
        • colorful - Elixir macros to decorate characters on CUI.
        • colors - Colors util written in Elixir.
        • decimal - Arbitrary precision decimal arithmetic for Elixir.
        • event_source_encoder - Encode data into EventSource compliant data.
        • inflex - An Inflector library for Elixir.
        • pinyin - chinese pinyin lib for elixir.
        • saltie - Saltie is a pseudo-encryption library primarily used for obfuscating numerical identifiers to opaque strings.
        • uuid - UUID generator and utilities for Elixir.
        • exmoji - Emoji encoding swiss army knife for Elixir/Erlang.

        Third Party APIs

        Libraries for accessing third party APIs.

        • balanced - Balanced Api Client for Elixir.
        • currently - A tool to display cards currently assigns on Trello.
        • dpd_client - An API client for the DPD service.
        • dropbox - Dropbox Core API client for Elixir.
        • exgravatar - An Elixir module for generating Gravatar urls.
        • ex推ter - 推ter client library for elixir.
        • ex_omegle - A minimal Omegle chat client library for Elixir.
        • 非死book - 非死book Graph API Wrapper written in Elixir.
        • parsex - ParsEx is an Elixir HTTP Client for communicating with Parse.com's Restful API.
        • parse_client - Elixir client for the parse.com REST API.
        • reap - Reap is a simple Elixir library for working with the refheap API.
        • simplex - An Elixir library for interacting with the Amazon SimpleDB API.

        Translations and Internationalizations

        Libraries providing translations or internationalizations.

        • linguist - Elixir Internationalization library.

        Validations

        Libraries and implementations for validation of data.

        • vex - An extensible data validation library for Elixir.

        XML

        Libraries and implementations working with XML.

        • quinn - XML parser for Elixir.
        • xml_builder - Elixir library for generating xml.
        • exmerl - Elixir wrapper for xmerl.

        Resources

        Various resources, such as books, websites and articles, for improving your Elixir development skills and knowledge.

        Books

        Fantastic books and e-books.

        • Programming Elixir - The book provides introduction to functional and concurrent programming with Elixir by Dave Thomas (2014).
        • Elixir in Action - A brief intro to the language followed by a more detailed look at building production-ready systems in Elixir by Sa?a Juri? (2014).
        • The Little Elixir & OTP Guidebook - A book for learning Elixir and OTP through small to medium-sized projects by Benjamin Tan Wei Hao (2014).
        • études for Elixir - A collection of exercises to program in Elixir by J. David Eisenberg (2013).
        • Introducing Elixir - A gentle introduction to the language, with lots of code examples and exercises by Simon St. Laurent and J. David Eisenberg (2013).
        • Elixir for the functional Rubyist - Not yet released. By Johnny Winn.
        • Erlang in Anger - This book intends to be a little guide about how to be the Erlang medic in a time of war by Fred Hebert (2014).

        Other Awesome Lists

        Other amazingly awesome lists can be found at jnv/lists.

        • Awesome Erlang - A curated list of awesome Erlang libraries, resources and shiny things.

        Reading

        Elixir-releated reading materials.

        Screencasts

        Cool video tutorials.

        Websites

        Useful web and Elixir-related websites and newsletters.

        項目主頁:http://www.baiduhome.net/lib/view/home/1413445915059

     本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
     轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
     本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!