No description
| .forgejo/workflows | ||
| .github | ||
| .vscode | ||
| docs | ||
| frontend | ||
| scripts | ||
| sync-server | ||
| .editorconfig | ||
| .gitignore | ||
| manifest.json | ||
| package-lock.json | ||
| README.md | ||
| rustfmt.toml | ||
VaultLink self-hosted Obsidian plugin for file syncing
Develop
Set up Node.JS 25 with nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bashnvm install 25nvm use 25- Optionally, set the system-wide default:
nvm alias default 25
Set up Rust
- Install
rustup:curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh - Install
wasm-pack:curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh cargo install cargo-insta sqlx-cli
Install Obsidian on Linux
apt install flatpak
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
flatpak install flathub md.obsidian.Obsidian
flatpak run md.obsidian.Obsidian
Run in development mode
Start the server:
cargo install sqlx-cli
cd sync-server
cargo run config-e2e.yml
cd frontend
npm install
npm run dev
Scripts
Before pushing
scripts/check.sh --fix
Update HTTP API TS bindings
scripts/update-api-types.sh
Publish new version
scripts/bump-version.sh patch
Run E2E tests
scripts/e2e.sh 8
And to clean up the logs & database files, run scripts/clean-up.sh