Elixir JavaScript
Latest commit 334f324 Feb 24, 2017 @bryanjos bryanjos committed on GitHub Merge pull request #250 from elixirscript/compile_quoted
Compile quoted
Permalink
Failed to load latest commit information.
config Added environment configs. Added lib_path configuration Mar 29, 2016
lib Add translation to rewrite Elixir.Enum to Bootstrap.Enum Feb 24, 2017
priv/std_lib Fix error with piping JS macros Feb 24, 2017
src/javascript Use `args[0]` as `this` argument when applying function, return result. Feb 23, 2017
test compile using Elixir compiler for string and quoted compilation Feb 24, 2017
.babelrc Now using erlang-types, processes, and tailored libraries Jun 22, 2016
.credo.exs move standard lib folder. Add and update docs for mix tasks Feb 18, 2017
.eslintrc.js Fixed js linting issues Feb 17, 2017
.flowconfig Added post_office. refactored patterns. updated tuple to be a class Sep 21, 2015
.gitignore Fixed js linting issues Feb 17, 2017
.travis.yml Update README.md and travis.yml Feb 23, 2017
CHANGELOG.md Update umd test Feb 23, 2017
CONTRIBUTING.md move standard lib folder. Add and update docs for mix tasks Feb 18, 2017
FAQ.md Remove references to processes Feb 18, 2017
GettingStarted.md Update GettingStarted.md Feb 18, 2017
LICENSE Added DOM module that wraps the virtual-dom library. Added some funct… Sep 4, 2015
README.md Update README.md and travis.yml Feb 23, 2017
gulpfile.js Updated js tooling. Feb 20, 2016
mix.exs Move std_lib folder to priv. Remove compile_std_lib function and std_… Feb 23, 2017
mix.lock Update estree dependency Feb 18, 2017
package.json Remove references to processes Feb 18, 2017
rollup.config.js Add umd version of bootstrap file Feb 17, 2017

README.md

ElixirScript Documentation Build Deps Status Join the chat at https://gitter.im/elixirscript/elixirscript

The goal is to convert a subset (or full set) of Elixir code to JavaScript, providing the ability to write JavaScript in Elixir. This is done by taking the Elixir AST and converting it into JavaScript AST and then to JavaScript code. This is done using the Elixir-ESTree library.

Requirements

  • Elixir
  • Node (only for development)

Usage

Please check the Getting Started Guide for usage

FAQ, Limitations

Please check the FAQ

Development

Clone the repo

git clone git@github.com:bryanjos/elixirscript.git

Get dependencies

mix deps.get
npm install

Compile

mix compile

Test

mix test
npm test

Build

MIX_ENV=prod mix do clean, compile, dist

This will build a tarball in the dist folder. By default the escript built will look into the folder above it for the core JavaScript files needed for ElixirScript. To change the location, update the lib_path config variable in the :elixir_script config block to the path to look in and then do a clean build.

Communication

gitter room #elixirscript on the elixir-lang Slack

Contributing

Please check the CONTRIBUTING.md

Example projects

Using with Brunch

There is a plugin for using ElixirScript in your Brunch project here

1.0 Roadmap

There is a 1.0.0 Milestone defined which includes issues that are needed to be cleared before 1.0 can be reached.