brunsviga-demo/README.md

47 lines
1.4 KiB
Markdown

<div align="center">
<img alt="banner" src="./assets/brunsviga_banner.svg" width="60%"/>
<br>
<h2>Technology demonstration for 3D simulation of Brunsviga RK 13</h2>
</div>
This repository is a demonstration of web technologies that might be used for simulating the Brunsviga RK 13 mechanical calculator.
The demo is designed to be small and lightweight in deploment.
We use `vite` as the build system for a `react.js` web application that makes use `three.js` WebGL capabilites in order to render 3D objects and animate them in realtime.
Typescript is the preferred language as it offers relative type-safety during development.
The user interface is styled with `tailwindcss` and will refer to the paper, source code and some refernce documentation for the Brunsviga RK 13.
The built application can be delpoy via a static web server such as Nginx (see docker container).
## ☁️ Technology Stack
- Vite
- React
- Tailwind CSS
- Three.js
## 🚀 Getting Started
In order to get started, clone the repository:
```
git clone https://git.montehaselino.de/servostar/brunsviga-demo.git
```
Then build compile the application and run in development mode:
```
npm ci && npm run dev
```
## 🐋 Docker Container
The application can be build and launched in a multi stage container:
```
docker build --tag brunsviga-demo:latest .
```
Then run the container on port 80:
```
docker run -p 80:80 brunsviga-demo:latest
```