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..
Install / Use
/learn @danilhendrasr/DializerREADME
<div id="top"></div>
<!-- PROJECT LOGO -->
<br />
<div align="center">
<img src="apps/frontend/public/dializer-logo-round-white.png" width="100" style="margin-bottom: 20px">
<h1 align="center">Dializer</h1>
<p align="center">
A web-based flowchart interpreter.
</p>
<div align="center">
</div>
<img src="dializer-video.gif">
</div>
<!-- ABOUT THE PROJECT -->
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. It faciliates flowchart creation as well as interpretation of the flowchart (running the flowchart). To do this, it utilizes Konva for flowchart rendering as well as features a custom Recursive Descent Interpreter for evaluating the unnamed DSL that is used by it.
<!-- ROADMAP -->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 page.
Built With
<p align="right">(<a href="#top">back to top</a>)</p> <!-- GETTING STARTED -->Getting Started
Prerequisites
- Node v18+
- Docker (recommended)
Local Deployment
- Clone the repo and
cdinto the directory. - Run
npm install. - Copy the
.env.examplefile of theapps/backenddirectory and rename it to.envand fill the keys. - Run
docker compose up -d. - Dializer frontend is accessible via http://localhost:4200
- Dializer API is accessible via http://localhost:3333/api
License
Distributed under the MIT License. See LICENSE for more information.
<p align="right">(<a href="#top">back to top</a>)</p> <!-- CONTACT -->