Skip to content

leptos-rs/start-spin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Leptos Logo

Leptos Spin SSR Starter Template

This is a template for use with the Leptos web framework and the Spin WASI platform.

Click here to see the deployed version of this starter.

Creating Your Repo

First, ensure that you have Rust 'nightly' with both the wasm and wasm32-wasi targets, along with cargo-generate

  • rustup toolchain install nightly --allow-downgrade
  • rustup target add wasm32-unknown-unknown
  • rustup target add wasm32-wasi
  • cargo install cargo-generate

If you don't have spin installed you can install it with

curl -fsSL https://developer.fermyon.com/downloads/install.sh | bash

Once you have the Spin CLI tool downloaded, we recommend putting the binary into a folder already on your path, eg

sudo mv spin /usr/local/bin/

For the full Spin CLI install instructions see here.


To generate your own repo from this starter template, run

cargo generate --git https://github.com/leptos-rs/start-spin

Then

cd {{project-name}}

to go to your newly created project.


Feel free to explore the project structure, but the best place to start with your application code is in src/pages/home.rs.

Additionally, Cargo.toml may need updating as new versions of the dependencies are released, especially if things are not working after a cargo update.

Running & Developing Your Project

Running

spin watch

will build and run your server as well as recompile your code after making changes.

Using

spin up

will build and serve your app on 127.0.0.1:3000 by default. To serve at a different address, use spin up --listen <ADDRESS>.

Release and Deployment

To deploy your app to Fermyon Cloud signup here first. For more information on Ferymon Cloud see here.

After you have your Fermyon cloud account and have logged in using spin login, running

spin build

will build your application for release. Running

spin deploy

will publish your app to Fermyon cloud.

If you would prefer to deploy your app on own machine or in a VM with Docker rather than on Fermyon Cloud, see the Spin in Docker setup instructions here.


If you would like to deploy your Leptos-Spin app via Kubernetes, see the setup instructions for Spin on Kubernetes here.