REPL JS

Sole Fullstack Developer

Late 2018

Open Project

What is REPL JS?

REPL JS is an online JavaScript editor for testing and tinkering with small code fragments.

The editor will evaluate your code as you type and allows you to navigate your code's execution over time.

You can also experiment with 3rd party packages via require or Import statements (this is still an experimental feature).

Why was this built?

I wanted a lightweight JavaScript REPL with more power and flexibility. I was looking for a REPL that I can whip up quickly without the need to install packages locally. I also wanted the ability to easily share my explorations.

My Role / Technical Details

I'm the sole developer on this project.

The backend/API is built with hapijs and mongoose, which contains 160 jest tests (as of writing this).

The frontend is powered by nextjs (React), web workers, and monaco editor to name a few technologies.

The frontend also utilizes react native web in many areas to potentially lighten the work load if I consider developing a React Native companion mobile app.

This project also utilizes a custom ecmascript 2018 interpreter, based on the acornjs parser, containing over 500 jest tests.

The entire website runs on Digital Ocean, with an nginx reverse proxy and 2 dockerized nodejs containers (frontend and backend sever).

Deployment and tests are automated via an internal Gitlab CI.