Feat: add small README for website

This commit is contained in:
2026-01-18 15:49:45 +01:00
parent 1424b7a03f
commit f016127559

55
website/README.md Normal file
View 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