An educational web application focused on women's health topics, featuring interactive quizzes with scientifically-based questions and detailed explanations. Built with modern web technologies to provide an engaging learning experience.
-
4 Health Topics: Comprehensive coverage of important women's health areas
- Menopause: Hormonal changes and biological processes
- Endometriosis: Understanding the condition and its impact
- Breast Health: Awareness and early detection
- PCOS: Polycystic Ovary Syndrome education
-
Interactive Quizzes: 10-12 scientifically-based questions per topic
-
Immediate Feedback: Detailed explanations with medical terms clearly defined
-
Progress Tracking: Real-time score updates and completion status
-
Modern UI: Beautiful, responsive design with accessibility features
-
Educational Focus: Based on scientific research and medical knowledge
- Node.js (version 18 or higher)
- npm (comes with Node.js)
-
Clone the repository
git clone <repository-url> cd women-health
-
Install dependencies
npm install
-
Start the development server
npm run dev
-
Open your browser Navigate to
http://localhost:5000
women-health/
βββ client/ # Frontend React application
β βββ src/
β β βββ components/ # Reusable UI components
β β β βββ ui/ # shadcn/ui component library
β β β βββ examples/ # Example components
β β βββ pages/ # Page components (Home, Quiz, Results)
β β βββ data/ # Quiz content and data
β β βββ hooks/ # Custom React hooks
β β βββ lib/ # Utility functions
β βββ index.html
βββ server/ # Backend Express application
β βββ index.ts # Server entry point
β βββ routes.ts # API routes
β βββ storage.ts # Data storage logic
β βββ vite.ts # Vite development server setup
βββ shared/ # Shared TypeScript types
β βββ quiz-schema.ts # Quiz data types
β βββ schema.ts # General schemas
βββ attached_assets/ # Static assets and illustrations
βββ package.json # Project dependencies and scripts
- React 18 - Modern React with hooks and functional components
- TypeScript - Type safety and better development experience
- Tailwind CSS - Utility-first CSS framework
- Wouter - Lightweight routing library
- Radix UI - Accessible component primitives
- shadcn/ui - Beautiful, customizable component library
- Framer Motion - Smooth animations and transitions
- Express.js - Fast, unopinionated web framework
- Node.js - JavaScript runtime
- TypeScript - Type-safe server-side code
- Vite - Fast build tool and development server
- ESBuild - Fast JavaScript bundler
- PostCSS - CSS processing
- Autoprefixer - Automatic vendor prefixing
# Development
npm run dev # Start development server with hot reload
# Production
npm run build # Build for production
npm start # Start production server
# Development Tools
npm run check # TypeScript type checking
npm run db:push # Push database schema changes- 12 Questions | ~8 minutes
- Covers hormonal changes, biological processes, and health implications
- Topics include hot flashes, osteoporosis, cardiovascular health, and more
- 10 Questions | ~6 minutes
- Explains the condition, symptoms, diagnosis, and treatment options
- Focuses on biological mechanisms and impact on daily life
- 11 Questions | ~7 minutes
- Covers self-examination, screening, risk factors, and early detection
- Emphasizes prevention and awareness
- 12 Questions | ~8 minutes
- Explains the condition, symptoms, diagnosis, and management
- Covers hormonal aspects and long-term health implications
- Responsive Design: Works seamlessly on desktop, tablet, and mobile
- Accessibility: WCAG compliant with keyboard navigation and screen reader support
- Modern UI: Clean, professional design with smooth animations
- Educational Focus: Clear explanations with medical terminology defined
- Progress Tracking: Visual progress indicators and completion status
Quiz questions and explanations are located in:
client/src/data/quizData.ts
To add new questions:
- Open the file and navigate to the desired topic
- Add new question objects following the existing format
- Include proper explanations with medical terms defined
- Update the
questionCountin the topic metadata
The project uses shadcn/ui components located in:
client/src/components/ui/
All quiz data is typed using shared schemas:
shared/quiz-schema.ts
npm run buildThis creates optimized assets in the dist/ directory.
npm start- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the package.json file for details.
If you encounter any issues:
- Check the troubleshooting section below
- Review the browser console for frontend errors (F12)
- Check the terminal output for backend errors
- Ensure all prerequisites are installed and up to date
If port 5000 is already in use:
- Stop any other application using port 5000
- Or modify the port in
server/index.ts
# Clear npm cache
npm cache clean --force
# Delete node_modules and package-lock.json
rm -rf node_modules package-lock.json
# Reinstall
npm install- Ensure you're in the project root directory
- Verify Node.js version is 18 or higher:
node --version - Check that all dependencies installed successfully
- Look for error messages in the terminal output
- Check the terminal for compilation errors
- Verify the server started successfully
- Try clearing your browser cache and refreshing
- Check the browser console (F12) for JavaScript errors
This application is designed for educational purposes and includes:
- Scientifically-based questions reviewed for accuracy
- Clear explanations of medical terminology
- Focus on biological processes and health awareness
- Evidence-based information about women's health topics
Note: This application is for educational purposes only and should not replace professional medical advice. Always consult with healthcare providers for medical concerns.