Lunara is a full-stack web application for structured menstrual cycle tracking and pattern analysis.
It combines authenticated logging (Flow, Mood, Body) with real-time Firestore synchronization and strict security enforcement using Firebase Authentication and Firestore Rules.
- Email/password authentication
- Auth-gated log creation
- Flow, Mood, Body structured logging
- Real-time dashboard summary
- Firestore-backed contact form
- Strict user-scoped access control
Firestore rules enforce:
createonly ifrequest.auth.uid == request.resource.data.userIdreadonly ifrequest.auth.uid == resource.data.userIdupdate/deleterestricted to document owner- Contact messages: write-only from client
No public data exposure.
- Next.js (App Router)
- React
- TypeScript
- Tailwind CSS
- Firebase Authentication
- Cloud Firestore
- Firestore Security Rules
- Vercel
- app/ dashboard/ flow/ mood/ body/ features/ about/ contact/
- context/ auth-context.tsx
- lib/ firebase.ts
- firestore.rules
- Production deployment active
- Auth-protected logging functional
- Firestore rules validated
- Contact system integrated
- Real-time dashboard synchronization operational
- Log editing and deletion
- Pattern detection layer
- Streak tracking
- Data export (JSON / CSV)
- Notification system