mirror of
https://github.com/escalante29/WealthySmart.git
synced 2026-05-19 12:48:47 +02:00
Some checks failed
Deploy to VPS / deploy (push) Failing after 7s
Backend: FastAPI + PostgreSQL with models for accounts, transactions, and categories. Auto-categorization from merchant patterns, token auth, CRUD endpoints, and seed data for 16 categories and 4 bank accounts. Frontend: Login, Dashboard (account balances + recent charges), Transactions (full CRUD table with search/filter), Cash & Transfers view. Dark theme with emerald/cyan accents, responsive layout. Infrastructure: Updated docker-compose for backend + db services, nginx proxy config for API routing, deploy workflow with secrets. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
23 lines
720 B
Python
23 lines
720 B
Python
from fastapi import APIRouter, HTTPException, status
|
|
from fastapi.security import OAuth2PasswordRequestForm
|
|
from fastapi import Depends
|
|
|
|
from app.auth import create_access_token
|
|
from app.config import settings
|
|
|
|
router = APIRouter(prefix="/auth", tags=["auth"])
|
|
|
|
|
|
@router.post("/login")
|
|
def login(form_data: OAuth2PasswordRequestForm = Depends()):
|
|
if (
|
|
form_data.username != settings.ADMIN_USERNAME
|
|
or form_data.password != settings.ADMIN_PASSWORD
|
|
):
|
|
raise HTTPException(
|
|
status_code=status.HTTP_401_UNAUTHORIZED,
|
|
detail="Invalid credentials",
|
|
)
|
|
token = create_access_token(form_data.username)
|
|
return {"access_token": token, "token_type": "bearer"}
|