https://github.com/joelseq/linkstowr-api
Backend API for the LinkStowr web app, chrome extension and obsidian plugin
https://github.com/joelseq/linkstowr-api
axum rust surrealdb
Last synced: 11 months ago
JSON representation
Backend API for the LinkStowr web app, chrome extension and obsidian plugin
- Host: GitHub
- URL: https://github.com/joelseq/linkstowr-api
- Owner: joelseq
- Archived: true
- Created: 2023-07-16T02:54:22.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2025-06-24T02:07:19.000Z (about 1 year ago)
- Last Synced: 2025-07-24T05:34:54.067Z (12 months ago)
- Topics: axum, rust, surrealdb
- Language: Rust
- Homepage: https://linkstowr.com/
- Size: 80.1 KB
- Stars: 5
- Watchers: 1
- Forks: 1
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# LinkStowr API (Deprecated)

[
](https://hub.docker.com/r/joelseq/linkstowr-api)

> [!NOTE]
> There's a new version of this API available [here](https://github.com/joelseq/linkstowr-api-v2).
API for the LinkStowr web app, chrome extension and obsidian plugin.
## Developing
This project uses SurrealDB as the database. Take a look at their [docs](https://surrealdb.com/install)
for instructions on how to install it.
Start the database using the script file:
```sh
./init_db.sh
```
This will run a local version of SurrealDB and write its data to the "data" directory.
The back end uses [Shuttle](https://www.shuttle.rs/) to simplify the development and deployment process.
This requires [installing](https://docs.shuttle.rs/introduction/installation) the `cargo-shuttle` CLI.
To run the server locally:
```
cargo shuttle run
```
To run the server in watch mode:
```
cargo watch -q -c -w src/ -x "shuttle run"
```
## Resources
These are some resources that I found helpful while learning how to create a Rust backend:
- [Jeremy Chone's "Rust Axum Full Course - Web Development" video on YouTube](https://www.youtube.com/watch?v=XZtlD_m59sM)
- [Zero To Production In Rust by Luca Palmieri](https://www.zero2prod.com/)