An open API service indexing awesome lists of open source software.

https://github.com/synphonyte/leptos-surreal-session-auth-axum


https://github.com/synphonyte/leptos-surreal-session-auth-axum

Last synced: about 2 months ago
JSON representation

Awesome Lists containing this project

README

          

# Leptos Surrealdb Session Auth Axum Starter Template

## Running your project

```bash
cargo leptos watch
```

## Installing Additional Tools

You may need to install one or more of these tools.

1. `rustup toolchain install nightly --allow-downgrade` - make sure you have Rust nightly
2. `rustup target add wasm32-unknown-unknown` - add the ability to compile Rust to WebAssembly

## Run Surreal Server

1. Install surreal on your machine https://docs.surrealdb.com/docs/installation/overview
2. Run disk based server
```bash
surreal start --user root --pass root --bind 127.0.0.1:8000 file://path/to/mydatabase
```

## Compiling for Release
```bash
cargo leptos build --release
```

Will generate your server binary in target/server/release and your site package in target/site

## Testing Your Project
```bash
cargo leptos end-to-end
```

```bash
cargo leptos end-to-end --release
```

Cargo-leptos uses Playwright as the end-to-end test tool.
Tests are located in end2end/tests directory.

## Executing a Server on a Remote Machine Without the Toolchain
After running a `cargo leptos build --release` the minimum files needed are:

1. The server binary located in `target/server/release`
2. The `site` directory and all files within located in `target/site`

Copy these files to your remote server. The directory structure should be:
```text
project_name
site/
```
Set the following environment variables (updating for your project as needed):
```text
LEPTOS_OUTPUT_NAME="project_name"
LEPTOS_SITE_ROOT="site"
LEPTOS_SITE_PKG_DIR="pkg"
LEPTOS_SITE_ADDR="127.0.0.1:3000"
LEPTOS_RELOAD_PORT="3001"
```
Finally, run the server binary.