Implement complete full-stack authentication system

- Restructure project with separate frontend/backend architecture
- Create dedicated backend with Axum, SQLite, JWT authentication
- Implement real API endpoints for register/login/verify
- Update frontend to use HTTP requests instead of mock auth
- Add bcrypt password hashing and secure token generation
- Separate Cargo.toml files for frontend and backend builds
- Fix Trunk compilation by isolating WASM-incompatible dependencies
- Create demo user in database for easy testing
- Both servers running: frontend (8081), backend (3000)

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Connor Johnstone
2025-08-28 16:15:37 -04:00
parent 08c333dcba
commit 25bf194d19
12 changed files with 641 additions and 82 deletions

View File

@@ -1,8 +1,10 @@
[package]
name = "yew-app"
name = "calendar-app"
version = "0.1.0"
edition = "2021"
# Frontend binary only
[dependencies]
yew = { version = "0.21", features = ["csr"] }
web-sys = "0.3"
@@ -38,16 +40,9 @@ base64 = "0.21"
# XML/Regex parsing
regex = "1.0"
# Frontend authentication (backend removed for WASM compatibility)
# sqlx = { version = "0.7", features = ["runtime-tokio-rustls", "sqlite", "chrono", "uuid", "migrate"] }
# bcrypt = "0.15"
# jsonwebtoken = "9.0"
# Yew routing and local storage
# Yew routing and local storage (WASM only)
yew-router = "0.18"
gloo-storage = "0.3"
gloo-timers = "0.3"
wasm-bindgen-futures = "0.4"
[dev-dependencies]
tokio = { version = "1.0", features = ["macros", "rt"] }