Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/danilhendrasr/dializer
I'm doing canvas-based stuff and embed a custom DSL with hand-written interpreter because my senior said I can't do CRUD-only websites for thesis..
https://github.com/danilhendrasr/dializer
canvas flowchart full-stack nestjs nodejs react rest-api thesis
Last synced: 6 days ago
JSON representation
I'm doing canvas-based stuff and embed a custom DSL with hand-written interpreter because my senior said I can't do CRUD-only websites for thesis..
- Host: GitHub
- URL: https://github.com/danilhendrasr/dializer
- Owner: danilhendrasr
- License: mit
- Created: 2022-10-21T02:38:48.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2023-12-15T18:57:20.000Z (11 months ago)
- Last Synced: 2024-04-15T07:51:50.306Z (7 months ago)
- Topics: canvas, flowchart, full-stack, nestjs, nodejs, react, rest-api, thesis
- Language: TypeScript
- Homepage: https://dializer.danilhendrasr.dev
- Size: 2.85 MB
- Stars: 4
- Watchers: 2
- Forks: 0
- Open Issues: 13
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Dializer
A web-based flowchart interpreter.
[![Stargazers][stars-shield]][stars-url]
[![Issues][issues-shield]][issues-url]
[![MIT License][license-shield]][license-url]
## About The Project
Dializer is a web-based application I created for my thesis.
It's intended to be a more-accessible alternative to [RAPTOR](https://raptor.martincarlisle.com).
It faciliates flowchart creation as well as interpretation of the flowchart (running the flowchart).
To do this, it utilizes [Konva](https://konvajs.org/) for flowchart rendering as well as features a
custom _Recursive Descent Interpreter_ for evaluating the unnamed DSL that is used by it.## Features
- Interpret the flowchart, not only visualize it.
- 7 flowchart node types: start, process, input, output, loop, branch, and end.
- A DSL to express programming operations.
- Cloud save, never lose your changes when switching device.
- Easy workspace sharing.More features are planned, see the [issues](https://github.com/danilhendrasr/dializer) page.
### Built With
[![React][react-shield]][react-url]
[![Nest.js][nest-shield]][nest-url]
[![PostgreSQL][postgre-shield]][postgre-url]## Getting Started
### Prerequisites
- Node v18+
- Docker (recommended)### Local Deployment
1. Clone the repo and `cd` into the directory.
2. Run `npm install`.
3. Copy the `.env.example` file of the `apps/backend` directory and rename it to `.env` and fill the keys.
4. Run `docker compose up -d`.
5. Dializer frontend is accessible via http://localhost:4200
6. Dializer API is accessible via http://localhost:3333/api## License
Distributed under the MIT License. See [LICENSE][license-url] for more information.
## Contact
[![Twitter][twitter-shield]][twitter-url]
[![LinkedIn][linkedin-shield]][linkedin-url]
[![Email][gmail-shield]][mail-url][repo-url]: (https://github.com/danilhendrasr/dializer)
[stars-shield]: https://img.shields.io/github/stars/danilhendrasr/dializer.svg?style=for-the-badge
[stars-url]: https://github.com/danilhendrasr/dializer/stargazers
[issues-shield]: https://img.shields.io/github/issues/danilhendrasr/dializer.svg?style=for-the-badge
[issues-url]: https://github.com/danilhendrasr/dializer/issues
[license-shield]: https://img.shields.io/github/license/danilhendrasr/dializer.svg?style=for-the-badge
[license-url]: https://github.com/danilhendrasr/dializer/blob/main/LICENSE
[twitter-shield]: https://img.shields.io/badge/Twitter-1DA1F2.svg?style=for-the-badge&logo=twitter&logoColor=white
[twitter-url]: https://twitter.com/danilhendrasr
[linkedin-shield]: https://img.shields.io/badge/LinkedIn-0A66C2.svg?style=for-the-badge&logo=linkedin&logoColor=white
[linkedin-url]: https://linkedin.com/in/danilhendrasr
[gmail-shield]: https://img.shields.io/badge/Email-EA4335.svg?style=for-the-badge&logo=gmail&logoColor=white
[mail-url]: mailto:[email protected]
[react-shield]: https://img.shields.io/badge/React-61DAFB?style=for-the-badge&logo=react&logoColor=000
[react-url]: https://reactjs.org/
[nest-shield]: https://img.shields.io/badge/Nest.js-E0234E?style=for-the-badge&logo=nestjs&logoColor=white
[nest-url]: https://reactjs.org/
[postgre-shield]: https://img.shields.io/badge/PostgreSQL-4169e1?style=for-the-badge&logo=postgresql&logoColor=white
[postgre-url]: https://postgresql.org/