A refined, elegant wellness tracking application with a sophisticated old-money aesthetic. Built with modern web technologies while maintaining classical design principles.
- Daily Habit Tracking: Monitor wellness rituals with elegant progress indicators
- Mood & Energy Monitoring: Sophisticated emotional wellness tracking
- Study Session Management: Pomodoro-style focus sessions with timer functionality
- Cycle Tracking: Discrete and elegant period tracking
- AI Wellness Assistant: Personalized guidance and insights
- Analytics Dashboard: Advanced data analysis with Python backend
- Responsive Design: Seamless experience across all devices
The application embraces the old money aesthetic:
- Color Palette: Cream, sage green, dusty rose, and navy tones
- Typography: Playfair Display and Lora serif fonts
- Minimalism: Clean, uncluttered interface
- Elegance: Subtle animations and refined interactions
- No Emojis: Professional, sophisticated visual language
- HTML5: Semantic markup
- CSS3: Advanced styling with CSS Grid and Flexbox
- Vanilla JavaScript: Clean, efficient client-side interactions
- Font Awesome: Professional iconography
- Google Fonts: Premium typography
- Node.js: Server-side JavaScript runtime
- Express.js: Web application framework
- SQLite: Lightweight database
- JWT: Secure authentication
- Rate Limiting: API protection
- Python: Data analysis and machine learning
- Pandas: Data manipulation and analysis
- Scikit-learn: Predictive analytics
- NumPy: Numerical computing
bloomwell-wellness-app/
βββ index.html # Main HTML file
βββ styles.css # Complete CSS styling
βββ script.js # Frontend JavaScript
βββ server.js # Node.js server
βββ package.json # Node dependencies
βββ wellness_analyzer.py # Python analytics engine
βββ routes/ # API route handlers
βββ database/ # Database schemas and migrations
βββ public/ # Static assets
βββ docs/ # Documentation
- Node.js (v16 or higher)
- Python (v3.8 or higher)
- npm or yarn
-
Clone the repository
git clone https://github.com/yourusername/bloomwell-wellness-app.git cd bloomwell-wellness-app -
Install Node.js dependencies
npm install
-
Install Python dependencies
pip install pandas numpy scikit-learn matplotlib seaborn sqlite3
-
Create environment file
cp .env.example .env # Edit .env with your configuration -
Initialize the database
npm run db:init
# Start the Node.js server
npm run dev
# In another terminal, start the Python analytics service
python wellness_analyzer.pynpm startThe application will be available at http://localhost:3000
POST /api/auth/register- User registrationPOST /api/auth/login- User loginPOST /api/auth/logout- User logout
GET /api/wellness/summary- Get wellness overviewPOST /api/wellness/checkin- Record wellness check-inGET /api/habits- Get user habitsPOST /api/habits- Create new habitPUT /api/habits/:id- Update habit progress
GET /api/insights/mood- Mood analysisGET /api/insights/habits- Habit patternsGET /api/insights/correlations- Cross-metric correlations
NODE_ENV=development
PORT=3000
JWT_SECRET=your-jwt-secret
DB_PATH=./database/bloomwell.db
ANALYTICS_ENABLED=true
RATE_LIMIT_WINDOW=15
RATE_LIMIT_MAX_REQUESTS=100The application uses SQLite for data persistence. The database schema includes:
- Users table
- Habits and habit entries
- Mood tracking
- Study sessions
- Period cycles
- Analytics cache
- Visual progress dots for daily completion
- Streak tracking and motivation
- Customizable habit targets
- Completion rate analytics
- 5-point mood scale with elegant interface
- Energy level tracking with interactive meter
- Correlation analysis with other metrics
- Weekly trend visualization
- Pomodoro timer with visual feedback
- Subject-based organization
- Performance tracking
- Peak productivity hour analysis
- Contextual responses based on user data
- Personalized recommendations
- Natural language processing
- Learning from user interactions
The Python analytics engine provides:
- Trend Analysis: Mood and habit progression over time
- Pattern Recognition: Weekly and seasonal patterns
- Correlation Discovery: Relationships between metrics
- Predictive Modeling: Future wellness predictions
- Personalized Recommendations: Data-driven suggestions
# Generate comprehensive wellness report
analyzer = WellnessAnalyzer()
report = analyzer.create_wellness_report('user_id', days=30)
# Export findings to CSV
analyzer.export_report_csv(report, 'wellness_insights.csv')- Helmet.js: Security headers
- Rate Limiting: API abuse prevention
- CORS Protection: Cross-origin request security
- Input Validation: Data sanitization
- JWT Authentication: Secure user sessions
The application is fully responsive with breakpoints for:
- Mobile devices (320px+)
- Tablets (768px+)
- Desktop (1024px+)
- Large screens (1440px+)
The old money color palette can be customized in styles.css:
:root {
--primary-cream: #f8f6f0;
--sage-green: #9cac8c;
--dusty-rose: #d4a5a5;
--deep-navy: #2c3e50;
--accent-gold: #c9a96e;
}Font selections can be modified in the HTML head:
<link href="https://fonts.googleapis.com/css2?family=Playfair+Display:wght@300;400;500;600;700&family=Lora:wght@300;400;500;600&display=swap" rel="stylesheet"># Run frontend tests
npm test
# Run backend tests
npm run test:server
# Run Python analytics tests
python -m pytest tests/docker build -t bloomwell-app .
docker run -p 3000:3000 bloomwell-app- Build the application:
npm run build - Upload files to your server
- Install dependencies:
npm install --production - Start the application:
npm start
- Design Inspiration: Old money aesthetic and minimalist wellness apps
- Typography: Google Fonts for elegant serif typefaces
- Icons: Font Awesome for professional iconography
- Analytics: Scikit-learn for machine learning capabilities
BloomWell - Wellness Refined
Cultivating excellence through mindful tracking and elegant design.