public
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: v1View latest version
A comprehensive web application for tracking menstrual cycles, symptoms, and health insights.
- Cycle Tracking: Log period start/end dates and flow intensity
- Predictions: Automatic calculation of next period and fertile window
- Symptom Tracking: Track mood, pain levels, and other symptoms
- Calendar View: Visual calendar showing cycle phases and predictions
- Insights: Cycle length trends and pattern analysis
- Data Export: Download your data as JSON
├── backend/
│ ├── database/
│ │ ├── migrations.ts # Database schema setup
│ │ └── queries.ts # Database query functions
│ ├── routes/
│ │ ├── cycles.ts # Cycle CRUD operations
│ │ ├── symptoms.ts # Symptom tracking
│ │ └── static.ts # Static file serving
│ └── index.ts # Main Hono server
├── frontend/
│ ├── components/
│ │ ├── App.tsx # Main application component
│ │ ├── Calendar.tsx # Calendar view
│ │ ├── CycleForm.tsx # Period logging form
│ │ ├── SymptomForm.tsx # Symptom tracking form
│ │ └── Insights.tsx # Analytics and insights
│ ├── index.html # Main HTML template
│ ├── index.tsx # React entry point
│ └── style.css # Custom styles
└── shared/
└── types.ts # Shared TypeScript types
- The app will automatically create the database tables on first run
- Navigate to the main page to start tracking your cycle
- Use the calendar view to see predictions and cycle phases
- Track symptoms daily for better insights
All data is stored locally in your Val Town SQLite database. No data is shared with third parties.