bryanjos

bryanjos

ElixirScript - converts Elixir to JavaScript

Hi, I just published version 0.23.0 of Elixirscript.

https://github.com/bryanjos/elixirscript/blob/master/CHANGELOG.md

Most of the changes are around JavaScript interop now that Elixirscript uses the Elixir compiler to compile and load files during compilation. This also means you can define macros in the same file now. Another bonus is that this release makes it a bit easier to share code between Elixir and Elixirscript.

That’s about it. Try it out and any feedback is always helpful.

Most Liked

bryanjos

bryanjos

Hello I just published the latest version of Elixirscript. For a full list of the changes, take a look at the changelog The major changes in this version are:

  • Can select between ES, CommonJS, or UMD module formats for output
  • Can use and compile dependencies in mix projects (if dependency has the elixirscript compiler in its mix compilers)
  • Default input and output paths in mix projects

There is now an elixirscript organization with the projects that it uses. Also there is a newly created blog with the first post giving more details about the majors changes.

Finally, a gitter room was created for the project. The elixirscript channel on the elixir-lang slack still exists and I’ll still be there. The gitter room allows for integrations and keeps the history.

bryanjos

bryanjos

Just published version 0.27.0 of elixirscript. One major change is that super and defoverridable are now implemented. The other is that JavaScript functions, properties, and modules can now be accessed from the JS module, examples: JS.alert("hi"), JS.console.log("hi"), JS.Date.now()

For the rest of the changes, please check the changelog

bryanjos

bryanjos

No new release just yet, but thought I’d send an update.

Thanks to the changes in OTP 20 and Elixir 1.5, ElixirScript was rewritten and can now support almost all Elixir features besides receive. More information is in this blog post.

Another addition is a change in JavaScript interoperability with an FFI module. More information on that can be found here

Next I’ve update the Todo Example to work with ElixirScript in master. I have taken the react parts in made it into a library that it uses. Showing how an ElixirScript library could look. Basically a normal mix project with javascript files in the priv folder if neeeded.

Most of the work now is implementing whatever Erlang calls Elixir makes in JavaScript. That’s where contributions to the project are definitely the most helpful. The other is in fixing bugs that appear along the way.

For a release, hoping to have something before ElixirConf.

P.S: receive

Want to support this eventually. I would like to be able to implement a process system in JavaScript using async/await and use that in ElixirScript, but my brain can’t quite grasp how to do so. Any help there would be appreciated

Edit: Or using the current implementation that uses generators is a possibility, but async functions seem to play better with normal javascript functions.

Where Next?

Popular in Announcing Top

tmbb
PhoenixWS - Websockets over Phoenix Channels Source code on Github here: GitHub - tmbb/phoenix_ws: Websockets implemented over Phoenix Ch...
New
mathieuprog
Hello :waving_hand: Allow me to introduce you to Tz, an alternative time zone database support to Tzdata. Why another library? First a...
New
martinthenth
Hello everybody :wave: Recently, some of my colleagues talked about database ids and uuids and their problems, and I remembered the pain...
New
ityonemo
Currently just starting out on a new mini-project - getting zig NIFs to run in elixir. https://github.com/ityonemo/zigler The idea here...
New
tmbb
I’ve been working on two packages (not on hex.pm yet) to build admin interfaces for phoenix apps: bureaucrat - which contains a bunch ...
New
woutdp
Hi! I wanted to introduce my latest project LiveSvelte. It allows you to render Svelte inside LiveView with end-to-end reactivity. It’s ...
New
type1fool
WebAuthnLiveComponent WebAuthnComponents See this post about renaming the package. Passwordless authentication for Phoenix LiveView app...
New
versilov
Could not wait for the missing Elixir ML libraries to appear, so, I wrote one myself, taking https://github.com/sdwolfz/exlearn as a foun...
New
hpopp
After just over two years in development, this latest version of Pigeon is what I finally consider done in regards to my original vision ...
New
markmark206
simple_feature_flags is a tiny package that lets you turn features on or off based on which environment (e.g. localhost, staging, product...
New

Other popular topics Top

New
AstonJ
Posting this to see if we can make things easier for people to get into Neovim. If you use Neovim and have a favourite distro please let ...
New
lastday4you
I wanted to check elixir version in phoenix because i found that my elixir is 1.5 but when i use Enum.chunk_by it said the function is un...
New
chrismccord
This release brings a number of exciting features, including integration with the new Phoenix LiveDashboard and Phoenix LiveView. There h...
New
Lily
In templates/appointment/index.html.eex: <%= for appointment <- @appointments do %> <tr> <td><%= appoi...
New
sergio_101
I am VERY much an elixir newbie. I have taken one elixir course and one phoenix course on Udemy. During that course, I saw the instructor...
New
fayddelight
I tried installing elixir 1.11.2 erlang 23.3.4 via asdf in my zsh shell. Enabled the versions locally and globally. When I list them ...
New
dblack
I’ve got an issue with an app and I’ve no idea of how to troubleshoot it. I’m hoping someone here might have seen something similar. I p...
New
vegabook
I’m brand new to Phoenix and I have stripped one of the demo applications to the bone. I just want to get an svg up on the screen. Here i...
New
jononomo
For some reason my phoenix channels are working for me in my local dev environment, but as soon as I deploy via Docker, I get a 403 error...
New

Latest on Elixir Forum

We're in Beta

About us Mission Statement