mirror of
https://github.com/nicotsx/zerobyte.git
synced 2026-04-18 05:47:31 -04:00
* feat: oidc feat: organization switcher refactor: org context feat: invitations GLM * feat: link current account * refactor: own page for sso registration * feat: per-user account management * refactor: code style * refactor: user existing check * refactor: restrict provider configuration to super admins only * refactor: cleanup / pr review * chore: fix lint issues * chore: pr feedbacks * test(e2e): automated tests for OIDC * fix: check url first for sso provider identification * fix: prevent oidc provider to be named "credential"
1.7 KiB
1.7 KiB
Important instructions
- Never create migration files manually. Always use the provided command to generate migrations
- If you realize an automated migration is incorrect, make sure to remove all the associated entries from the
_journal.jsonand the newly created files located inapp/drizzle/before re-generating the migration - The dev server is running at http://localhost:3000. Username is
adminand password ispassword - The repo is https://github.com/nicotsx/zerobyte
- If you need to run a specific restic command on a repository, you can open and use the dev panel with
Meta+Shift+D
Project Overview
Zerobyte is a backup automation tool built on top of Restic that provides a web interface for scheduling, managing, and monitoring encrypted backups. It supports multiple volume backends (NFS, SMB, WebDAV, SFTP, local directories) and repository backends (S3, Azure, GCS, local, and rclone-based storage).
Type Checking
# Run type checking and generate React Router types
bun run tsc
Testing
# Run all tests
bun run test
# Run a specific test file
bunx dotenv-cli -e .env.test -- bun test --preload ./app/test/setup.ts path/to/test.ts
Building
# Build for production
bun run build
Database Migrations
# Generate new migration from schema changes
bun gen:migrations
# Generate a custom empty migration
bunx drizzle-kit generate --custom --name=fix-timestamps-to-ms
API Client Generation
bun run gen:api-client
Code Quality
# Format
bunx oxfmt format --write <path>
# Lint
bun run lint
Invalidation
The frontend has an automatic invalidation setup which runs after every mutation. Do not implement any invalidation logic in the frontend.