Skip to content

Conversation

@bradleyshep
Copy link
Contributor

Based on #4112

Description of Changes

Adds a Remix quickstart template and documentation for SpacetimeDB.

Template (templates/remix-ts/)

  • SpacetimeDB module with TypeScript (spacetimedb/src/index.ts)
  • Remix app with Vite configuration
  • SpacetimeDB provider in app/providers.tsx with proper SSR/hydration handling
  • Example route (app/routes/_index.tsx) demonstrating useTable and useReducer hooks
  • Pre-generated module bindings in src/module_bindings/

Documentation (docs/docs/00100-intro/00200-quickstarts/00175-remix.md)

  • Step-by-step quickstart guide following existing pattern
  • Covers project creation with spacetime dev --template remix-ts
  • Explains project structure, provider pattern, and React hooks usage
  • Documents environment variable configuration (VITE_SPACETIMEDB_HOST, VITE_SPACETIMEDB_DB_NAME)

Consistency

  • Environment variables follow the same HOST/DB_NAME naming convention as other quickstarts
  • Documentation structure mirrors Next.js and React quickstarts
  • Dev server runs on port 3001 to avoid conflict with SpacetimeDB on port 3000

API and ABI breaking changes

None.

Expected complexity level and risk

1 - Additive change only. New template and documentation, no modifications to existing functionality.

Testing

  • Run spacetime dev --template remix-ts my-remix-app and verify app starts
  • Verify SpacetimeDB connection works at http://localhost:3001
  • Test adding a person via the UI form
  • Verify SSR doesn't crash (SpacetimeDB provider defers to client-side)
  • Check documentation renders correctly in Docusaurus

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants