Accountability_Tracker
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.
index.ts
https://magadjiya--ef64f56c3fae11f0a97d76b3cceeab13.web.val.run
A comprehensive goal tracking application that allows users to set goals over specific time periods and track their progress through daily checklists.
- Goal Management: Create, edit, and delete goals with custom time periods
- Daily Checklists: Mark daily progress for each active goal
- Progress Tracking: Visual progress indicators and completion statistics
- Goal History: View completed and archived goals
- Responsive Design: Works on desktop and mobile devices
βββ backend/
β βββ database/
β β βββ migrations.ts # Database schema setup
β β βββ queries.ts # Database query functions
β βββ routes/
β β βββ goals.ts # Goal CRUD operations
β β βββ checklist.ts # Daily checklist operations
β βββ index.ts # Main Hono server
βββ frontend/
β βββ components/
β β βββ App.tsx # Main application component
β β βββ GoalForm.tsx # Goal creation/editing form
β β βββ GoalCard.tsx # Individual goal display
β β βββ DailyChecklist.tsx # Daily progress tracking
β βββ index.html # Main HTML template
β βββ index.tsx # Frontend entry point
βββ shared/
βββ types.ts # Shared TypeScript interfaces
GET /api/goals
- Get all goalsPOST /api/goals
- Create a new goalPUT /api/goals/:id
- Update a goalDELETE /api/goals/:id
- Delete a goalGET /api/checklist/:goalId
- Get checklist entries for a goalPOST /api/checklist
- Mark daily progressGET /api/stats/:goalId
- Get goal statistics
- id (INTEGER PRIMARY KEY)
- title (TEXT)
- description (TEXT)
- start_date (TEXT)
- end_date (TEXT)
- created_at (TEXT)
- status (TEXT) - 'active', 'completed', 'paused'
- id (INTEGER PRIMARY KEY)
- goal_id (INTEGER)
- date (TEXT)
- completed (BOOLEAN)
- notes (TEXT)
- created_at (TEXT)
- The app will automatically set up the database on first run
- Navigate to the root URL to start using the application
- Create your first goal and start tracking daily progress!