Test
Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data – all from the browser, and deployed in miliseconds.
index.ts
https://Mbiyu--75182ef23f7011f09b1f76b3cceeab13.web.val.run
A 30-day habit tracking application for groups to track journaling, workouts, and reading habits.
- Individual Tracking: Each person can mark their daily habits as complete
- Group Visibility: See who has completed which habits each day
- 30-Day Challenge: Track progress over a 30-day period
- Three Core Habits:
- 📝 Journaling
- 💪 Workout
- 📚 Reading
├── backend/
│ ├── database/
│ │ ├── migrations.ts # Database schema setup
│ │ └── queries.ts # Database query functions
│ ├── routes/
│ │ ├── habits.ts # Habit tracking API routes
│ │ └── users.ts # User management routes
│ └── index.ts # Main Hono server
├── frontend/
│ ├── components/
│ │ ├── App.tsx # Main application component
│ │ ├── HabitGrid.tsx # 30-day habit grid
│ │ ├── UserCard.tsx # Individual user progress
│ │ └── GroupOverview.tsx # Group progress overview
│ ├── index.html # Main HTML template
│ └── index.tsx # Frontend entry point
└── shared/
└── types.ts # Shared TypeScript types
- Users can register with their name
- Mark daily habits as complete/incomplete
- View personal progress over 30 days
- See group overview of who's completed what each day
- Track streaks and completion rates
- Backend: Hono + SQLite
- Frontend: React + TypeScript + TailwindCSS
- Storage: Val Town SQLite
- Styling: TailwindCSS via Twind