Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/israelalagbe/waves-assembly-language

A Web based assembly language and compiler for Waves, a new assembly language written in JavaScript
https://github.com/israelalagbe/waves-assembly-language

Last synced: about 2 months ago
JSON representation

A Web based assembly language and compiler for Waves, a new assembly language written in JavaScript

Awesome Lists containing this project

README

        

# Waves Assembly Language

Waves Assembly Language is a web-based compiler for a unique assembly language designed and implemented from scratch. Created as a part of my final year project in college in 2017, this project showcases a blend of creativity, technical skills, and innovation.

## Try it out
Click [here](https://israelalagbe.github.io/waves-assembly-language/) to try it out yourself: https://israelalagbe.github.io/waves-assembly-language/

## Overview

The compiler interprets a custom assembly language, referred to as "Waves," and translates it into executable code. It is written in JavaScript and uses various libraries, including Jison parser, Metro UI, and Ace Editor, to offer an optimal user experience.

### Features

- **Syntax Highlighting**: Integrated with Ace Editor, providing real-time syntax highlighting.
- **Custom Parsing**: Utilizing Jison parser to interpret the unique syntax of Waves.
- **Modern UI**: Styled with Metro UI to offer an intuitive and aesthetically pleasing interface.
- **Interactive Experience**: Compile and execute code directly from the browser.

### Screenshots
![Usage](https://github.com/user-attachments/assets/754cc596-7102-4342-a56d-66afc6680001)

![Code Editor Screen](/screenshots/editor.png "Code Editor Screen")

![Output Screen](/screenshots/output.png "Output Screen")

## Installation & Usage

### Prerequisites

- Web browser with JavaScript support
- [VS Code Live Server](https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer) or any local server

### Running Locally

1. Clone the repository:
```sh
git clone https://github.com/israelalagbe/waves-assembly-language.git
```

2. Navigate to the project directory:
```sh
cd waves-assembly-language
```

3. Open the project with Visual Studio Code.

4. Use the Live Server extension (or your preferred local server) to launch the project.

## Development

The project makes extensive use of the following libraries and tools:

- **JavaScript**: Core programming language
- **Jison Parser**: For parsing custom assembly language syntax
- **Metro UI**: For a responsive and modern interface
- **Ace Editor**: For code editing and syntax highlighting

### Contributing

If you're interested in contributing or have suggestions and ideas, feel free to open an issue or create a pull request.

## License

This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.

## Acknowledgements

Special thanks to my college lecturers, peers, and everyone who contributed directly or indirectly to this project.