72 lines
2.6 KiB
Markdown
72 lines
2.6 KiB
Markdown
# Topos: A Web-Based Algorithmic Sequencer
|
||
|
||
<p align="center"> |
|
||
<a href="https://discord.gg/aPgV7mSFZh">Discord</a> |
|
||
<a href="https://raphaelforment.fr/">BuboBubo</a> |
|
||
<a href="about:blank">Amiika</a> |
|
||
<a href="https://toplap.org/">About Live Coding</a> |
|
||
<br><br>
|
||
<h2 align="center"><b>Contributors</b></h2>
|
||
<p align='center'>
|
||
<a href="https://github.com/bubobubobubobubo/Topos/graphs/contributors">
|
||
<img src="https://contrib.rocks/image?repo=bubobubobubobubo/Topos" />
|
||
</a>
|
||
</p>
|
||
</p>
|
||
|
||
Topos is a web-based live coding environment. It lives [here](https://topos.live). Documentation is directly embedded in the application itself. Topos is an emulation and extension of the [Monome Teletype](https://monome.org/docs/teletype/) that gradually evolved into something a bit more personal.
|
||
|
||

|
||
|
||
## Disclaimer
|
||
|
||
**Topos** is a fairly young project developed by two part time hobbyists :) Do not expect stable features and/or user support in the initial development stage. Contributors and curious people are welcome! The software is working quite well and we are continuously striving to improve it.
|
||
|
||
## Installation (for devs and contributors)
|
||
|
||
To run the application, you will need to install [Node.js](https://nodejs.org/en/) and [Yarn](https://yarnpkg.com/en/). Then, clone the repository and run:
|
||
|
||
- `yarn install`
|
||
- `yarn run dev`
|
||
|
||
To build the application for production, you will need to install [Node.js](https://nodejs.org/en/) and [Yarn](https://yarnpkg.com/en/). Then, clone the repository and run:
|
||
|
||
- `yarn run build`
|
||
- `yarn run start`
|
||
|
||
Always run a build before committing to check for compiler errors. The automatic deployment on the `main` branch will not accept compiler errors!
|
||
|
||
To build a standalone browser application using [Tauri](https://tauri.app/), you will need to have [Node.js](https://nodejs.org/en/), [Yarn](https://yarnpkg.com/en/) and [Rust](https://www.rust-lang.org/) installed. Then, clone the repository and run:
|
||
|
||
- `yarn tauri build`
|
||
- `yarn tauri dev`
|
||
|
||
The `tauri` version is only here to quickstart future developments but nothing has been done yet.
|
||
|
||
## Docker
|
||
|
||
### Run the application
|
||
|
||
`docker run -p 8001:80 yassinsiouda/topos:latest`
|
||
|
||
### Build and run the prod image
|
||
|
||
`docker compose --profile prod up`
|
||
|
||
### Build and run the dev image
|
||
|
||
**First installation**
|
||
First you need to map node_modules to your local machine for your ide intellisense to work properly
|
||
|
||
```bash
|
||
docker compose --profile dev up -d
|
||
docker cp topos-dev:/app/node_modules .
|
||
docker compose --profile dev down
|
||
```
|
||
|
||
**Then**
|
||
|
||
```bash
|
||
docker compose --profile dev up
|
||
```
|