Unlisted
Like
Gymtracking
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: v4View latest version
A comprehensive gym tracking application with social features for fitness enthusiasts.
- Workout Tracking: Log exercises, sets, reps, and weights
- Progress Visualization: Charts showing strength and performance improvements
- Public Chat Room: Real-time chat for sharing tips, motivation, and ideas
- Exercise Database: Comprehensive list of exercises with instructions
- Personal Records: Track your best lifts and achievements
- User Profiles: Personalized fitness profiles and goals
├── backend/
│ ├── database/
│ │ ├── migrations.ts # Database schema setup
│ │ └── queries.ts # Database query functions
│ ├── routes/
│ │ ├── auth.ts # Authentication routes
│ │ ├── workouts.ts # Workout CRUD operations
│ │ ├── chat.ts # Chat functionality
│ │ └── static.ts # Static file serving
│ └── index.ts # Main Hono server
├── frontend/
│ ├── components/
│ │ ├── App.tsx # Main application component
│ │ ├── WorkoutTracker.tsx
│ │ ├── ProgressCharts.tsx
│ │ ├── ChatRoom.tsx
│ │ └── ExerciseDatabase.tsx
│ ├── index.html # Main HTML template
│ ├── index.tsx # Frontend entry point
│ └── style.css # Custom styles
└── shared/
└── types.ts # Shared TypeScript types
- Backend: Hono (TypeScript API framework)
- Frontend: React with TypeScript
- Database: SQLite
- Styling: TailwindCSS
- Charts: Chart.js via CDN
- Real-time: Server-Sent Events for chat
- The app runs on Val Town's serverless platform
- Database tables are automatically created on first run
- Visit the app URL to start tracking your workouts
- Join the chat room to connect with other gym members
- Create Profile: Set up your fitness goals and preferences
- Log Workouts: Add exercises, sets, reps, and weights
- Track Progress: View charts of your improvement over time
- Chat with Members: Share tips and motivation in the public chat
- Browse Exercises: Explore the exercise database for new workout ideas