Feat: add small README for website
This commit is contained in:
55
website/README.md
Normal file
55
website/README.md
Normal file
@@ -0,0 +1,55 @@
|
||||
# Doux Website
|
||||
|
||||
Documentation and playground for the Doux synthesizer.
|
||||
|
||||
## Credits
|
||||
|
||||
Doux is a Rust port of [Dough](https://codeberg.org/uzu/dough), originally written in C by [Felix Roos](https://codeberg.org/froos). Dough is part of the [TidalCycles](https://tidalcycles.org) ecosystem. Consider [supporting the project](https://opencollective.com/tidalcycles).
|
||||
|
||||
## Architecture
|
||||
|
||||
- **SvelteKit** with static adapter for GitHub Pages deployment
|
||||
- **mdsvex** for markdown-based documentation in `src/content/`
|
||||
- **WASM module** (`static/doux.wasm`) — the synthesizer engine
|
||||
- **COI service worker** for Cross-Origin Isolation — browsers require `Cross-Origin-Opener-Policy` and `Cross-Origin-Embedder-Policy` headers to enable `SharedArrayBuffer`, which is needed for audio worklets. Since GitHub Pages doesn't allow custom headers, the service worker injects them client-side.
|
||||
|
||||
### Directory Structure
|
||||
|
||||
```
|
||||
src/
|
||||
├── content/ # Markdown documentation files
|
||||
├── lib/ # Shared components and utilities
|
||||
├── routes/
|
||||
│ ├── native/ # Native build downloads
|
||||
│ ├── reference/ # API reference pages
|
||||
│ └── support/ # Support pages
|
||||
└── app.html # HTML shell
|
||||
```
|
||||
|
||||
## Development
|
||||
|
||||
```bash
|
||||
pnpm install
|
||||
pnpm dev
|
||||
```
|
||||
|
||||
## Build
|
||||
|
||||
```bash
|
||||
pnpm build
|
||||
```
|
||||
|
||||
Output goes to `build/`.
|
||||
|
||||
## Deployment
|
||||
|
||||
Automatic via GitHub Actions on push to `main`. The workflow:
|
||||
|
||||
1. Builds the static site with `pnpm build`
|
||||
2. Deploys to GitHub Pages
|
||||
|
||||
See `.github/workflows/deploy.yml` for details.
|
||||
|
||||
## License
|
||||
|
||||
AGPL-3.0
|
||||
Reference in New Issue
Block a user