Skip to content

Full-stack SPA template using SolidJS, TypeScript, and Tailwind v4. Backed by Rust with Axum and PostgreSQL.

Notifications You must be signed in to change notification settings

robertwayne/template-axum-solidjs-spa

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Template: Axum / SolidJS SPA

Backend

Frontend

Getting Started

  • Clone the repository: git clone https://github.com/robertwayne/template-axum-solidjs-spa

  • Change .env.TEMPLATE to .env and set your Postgres credentials (if not using defaults).

  • Install your dependencies with bun i.

  • Build the client with bun run build from inside the /client directory. Alternatively, you can use bun dev to run the client with the vite dev server.

  • Run the server with cargo run from inside the /server directory.

    • If you're serving from axum, visit http://127.0.0.1:3000.
    • If you're serving from vite, visit http://127.0.0.1:8000.

Client Notes

  • Async, naive prefetching for route links.
  • Light/Dark mode themes built-in.
  • Responsive navigation menu built-in.

Server Notes

  • Sets default Cache-Control headers via a middleware function.
  • Uses tower-http CORS and Compression (brotli) middleware.
  • Uses mimalloc instead of the default allocator.

Remember, this is a template. Make sure you review the code and adjust it to your projects needs.

Additional Scripts

Command Action
./update.sh Updates the dependencies of both the client and server projects.