Skip to content

angelfor3v3r/eccologic-asm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Provides a web server that allows for x86/AArch64 assembling & disassembling through a RESTful API and serves a Single-page application (SPA) website for clients to program in.

Why?

Well... because it was fun. While other websites like this exist (and some are even better), I wanted to take my own approach to it and make it open source.

Building & Usage 🔨👷

The preferred way to use this project with little hassle is to just use Docker. For your convenience, I've provided Dockerfile and docker-compose files in the repository.

This project is only tested and working on Windows (Windows 10 w/ MSVC) & Linux (Debian (Bullseye) w/ GCC).
The web server currently only serves over HTTP (Port 80 by default) and does not rate limit. Ideally you'd run this all behind a reverse proxy and configure rate limits, etc yourself. If someone wants to contribute and add HTTPS support then go right ahead.

Prerequisites:

Oh and for Linux you'll need bash too.

If you haven't already, clone the repository into some directory.

> git clone https://github.com/angelfor3v3r/eccologic-asm.git

To build for Windows:

> cd eccologic-asm/backend
> ./build.bat

To build for Linux:

> cd eccologic-asm/backend
> ./build.sh

And finally, you need to build the frontend inside it's directory too:

> cd eccologic-asm/frontend
> npm install
> npm run build

Once finished, you'll end up with a bin folder in eccologic-asm.

  • On Windows, you can just run the asm.exe.
  • On Linux you MUST run the binary with libmimalloc.so like so: env LD_PRELOAD=/eccologic-asm/bin/libmimalloc.so /eccologic-asm/bin/asm.

If all went well then the website will be accessible from port 80! 🎉

Credits ❤️

  • Angelfor3v3r - Creator & Lead programmer.
  • Cursey - Backend programming, General help & Library recommendations.
  • JosiahWhite - Frontend programming.
  • Dom - General help & Library recommendations.

... And an additional thank you to all the amazing creators & contributors from the following projects:

None of this would've been possible without you! Thank you for all of your hard work.