## Description of Changes
- Migrate the documentation site to **Docusaurus**.
- Add a **GitHub Action workflow** that runs `pnpm build` on pull
requests targeting `master`.
This command checks for broken links and images and ensures the site
builds correctly.
- Add a **GitHub Action workflow** to publish the docs automatically
when a merge occurs on the `docs/release` branch.
**Important**: The workflows haven't been tested yet due to the fact
that they need to be merged first before being able to run. It's a
fairly basic workflow I don't expect this to block anyone but anyways I
will make another PR with the complete changes when I can actually run
it.
---
## API and ABI Breaking Changes
No breaking changes for **SpacetimeDB** users.
Documentation contributors should experience minimal disruption —
content is still written in Markdown.
---
## Expected Complexity Level and Risk
**Complexity:** 3/5
**Reasons:**
1. Several adjustments were made to fit Docusaurus conventions:
- Replaced our custom `:::server-rust` blocks with [Docusaurus `<Tabs/>`
components](https://docusaurus.io/docs/markdown-features/tabs).
- Converted “Note” callouts using
[admonitions](https://docusaurus.io/docs/markdown-features/admonitions)
instead of Markdown blockquotes.
- Updated all images (including Unity tutorial ones, which were
previously commented out).
- Moved images from the DO bucket into the repository at
`docs/static/images`.
2. Customized Docusaurus CSS and one component to apply our theme and
color palette.
---
## Testing
Tested locally.
---
## Review Notes
This PR involves many file changes — a full code review is likely not
productive.
Instead, please focus on verifying that the **documentation content**
was migrated correctly:
- Review sections you’re familiar with to confirm accuracy.
- Ensure formatting, links, and images render as expected.
You can follow the updated **README** for instructions on running
Docusaurus locally.
---------
Signed-off-by: Julien Lavocat <JulienLavocat@users.noreply.github.com>
Co-authored-by: John Detter <4099508+jdetter@users.noreply.github.com>
Co-authored-by: Tyler Cloutier <cloutiertyler@users.noreply.github.com>
Co-authored-by: = <cloutiertyler@gmail.com>
* clients connect to databases, not modules
* the name is for the database, not the module
* reducers are exposed by databases, not modules
* don't name clients "modules" too
* Modules have no state, the database has it
* more database instead of client connection
* databases are hosted, not modules
* users interact with databases, not modules
* fix typo
* Apply suggestions from code review
Co-authored-by: Tyler Cloutier <cloutiertyler@users.noreply.github.com>
* Apply suggestions from code review
Co-authored-by: Tyler Cloutier <cloutiertyler@users.noreply.github.com>
---------
Co-authored-by: Tyler Cloutier <cloutiertyler@users.noreply.github.com>
* *Must* accept `ReducerContext`, not *may*
* Small fixes to Rust docs for database Identity and rename Address
* Update Rust SDK reference for various 1.0 API changes
* Fix broken links
* TOC and TODOs
* Rename `Address` to `ConnectionId` in index, fix some links
* Minor fixes I found while working through converting this to typescript
* Link to SQL ref
* Additional fixups found while rewriting TS ref
* Remove references to BitCraftMini
We no longer use this as an example.
Also, I'm pretty sure we stopped using that name ages ago.
* No UB from mixing `subscribe` and `subscribe_to_all_tables`
Co-authored-by: joshua-spacetime <josh@clockworklabs.io>
* Update TypeScript SDK reference (#181)
* Begin updating TypeScript SDK ref to match the new rust one
* Link to SQL ref from `subscribe` method
* Fill in the rest of the TypeScript SDK ref
* Fix copy-paste error: `subscribeToAllTables` should be camelCase
Co-authored-by: joshua-spacetime <josh@clockworklabs.io>
* Copy change from Rust SDK docs: no UB in `subscribeToAllTables`
Co-authored-by: joshua-spacetime <josh@clockworklabs.io>
* Fix casing of `withModuleName`
Co-authored-by: Tyler Cloutier <cloutiertyler@users.noreply.github.com>
* Address Tyler's review
---------
Co-authored-by: joshua-spacetime <josh@clockworklabs.io>
Co-authored-by: Tyler Cloutier <cloutiertyler@users.noreply.github.com>
---------
Co-authored-by: joshua-spacetime <josh@clockworklabs.io>
Co-authored-by: Tyler Cloutier <cloutiertyler@users.noreply.github.com>