flixdb
Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data β all from the browser, and deployed in milliseconds.
Viewing readonly version of main branch: v163View latest version
A web application for managing notes and receipts with user authentication using PocketBase.
- User authentication (login/logout)
- Notes Management:
- Create, read, update, and delete notes
- Receipts Management:
- Create, read, update, and soft-delete receipts
- Star/unstar receipts for easy organization
- Soft delete (trashed receipts are hidden but not permanently deleted)
- Automatic location capture - Uses browser geolocation API to capture coordinates when creating receipts
- Toggle location capture on/off per receipt
- Responsive design with TailwindCSS
- Real-time updates
/- Home page with login/logout functionality/notes- Notes Manager/receipts- Receipts Manager
backend/- Hono API server with PocketBase integrationfrontend/- React frontend applicationshared/- Shared types and utilities
POCKETBASE_URL- Your PocketBase instance URL
- Standard PocketBase users collection with email/password auth
id(automatic)note(text) - The note contentcreated(datetime, automatic)updated(datetime, automatic)
Important: You need to create this collection in your PocketBase admin panel with these fields:
id(automatic)message(text, optional) - The receipt message/contentstarred(boolean, optional, default: false) - Whether the receipt is starredtrashed(boolean, optional, default: false) - Whether the receipt is soft-deletedcoords(json, optional) - Geographic coordinates (not used in UI)created(datetime, automatic)updated(datetime, automatic)
Collection Rules for receipts:
- List rule:
@request.auth.id != "" - View rule:
@request.auth.id != "" - Create rule:
@request.auth.id != "" - Update rule:
@request.auth.id != "" - Delete rule:
@request.auth.id != ""
POST /api/auth/login- Login with email/passwordPOST /api/auth/logout- Logout current userGET /api/auth/me- Get current user info
GET /api/notes- Get all notes for authenticated userPOST /api/notes- Create a new notePUT /api/notes/:id- Update a noteDELETE /api/notes/:id- Delete a note
GET /api/receipts- Get all non-trashed receipts for authenticated userPOST /api/receipts- Create a new receipt (with optional coordinates)PUT /api/receipts/:id- Update a receipt (message and/or starred status)DELETE /api/receipts/:id- Soft-delete a receipt (sets trashed=true)