Jotzy/backend/app/main.py

35 lines
731 B
Python
Raw Normal View History

2025-11-19 21:16:32 +00:00
# backend/app/main.py
from fastapi import FastAPI, HTTPException
from pydantic import BaseModel
from .models import add_note, get_all_notes
app = FastAPI(title="Simple Note API")
class NoteIn(BaseModel):
title: str
body: str
class NoteOut(NoteIn):
id: int
@app.get("/health")
def health():
return {"status": "ok"}
@app.get("/notes", response_model=list[NoteOut])
def list_notes():
return get_all_notes()
@app.post("/notes", response_model=NoteOut, status_code=201)
def create_note(note: NoteIn):
# Very tiny validation you can expand later
if not note.title.strip():
raise HTTPException(status_code=400, detail="Title cannot be empty")
return add_note(note.title, note.body)