Skip to content

【⭐️ Star this repo to support workplace wellness innovation!】A comprehensive women's health platform designed for workplace wellness. This Next.js application offers personalized health tracking for female employees while providing HR departments with anonymized data insights for better workforce planning and employee support.

License

Notifications You must be signed in to change notification settings

ChanMeng666/sanicle-ai

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Project Banner

🌸 Sanicle-AI

Women's Health Platform for Workplace Wellness

A comprehensive women's health platform designed for workplace wellness that combines AI-powered health assistance, multi-tenant architecture, and privacy-first design.
Supports health tracking, AI consultations, leave management, and organizational analytics.
One-click FREE deployment with enterprise-grade security and scalability.

Live Demo · Documentation · API Reference · Issues


🚀 Visit Live Site 🚀




Share Project Repository

🌟 Pioneering the future of women's health in the workplace. Built for enterprises and organizations of all sizes.

🎬 Project Demo Video

[!TIP] Watch our comprehensive project introduction video to see Sanicle-AI in action!

Project Introduction Video

🎥 Watch Full Demo Video

Click the image above or the link to watch our complete platform walkthrough


📸 Project Screenshots

[!TIP] Explore the comprehensive dashboard system designed specifically for women's health management in workplace environments.

Main Dashboard Overview

Multi-Level Dashboard System - Tailored for different user roles

Employee Dashboard HR Dashboard

Employee Dashboard (left) and HR Management Dashboard (right)

📱 More Screenshots
Resource Management

Resource Management - Educational materials and policy documents

Event Management

Event Management - Health workshops and webinars

AI Assistant

Dual AI System - IBM Watson X and Google Gemini integration

Tech Stack Badges:

Important

This project was developed for the "UN Women x Sanicle.cloud Hackathon" competition, focusing on digital solutions to improve workplace women's health management. It demonstrates enterprise-grade multi-tenant architecture with advanced AI capabilities for health support.

📑 Table of Contents

TOC


🌟 Introduction

Sanicle-AI is a groundbreaking women's health platform that transforms workplace wellness through cutting-edge technology. Built with a multi-tenant architecture, the platform serves organizations of all sizes while maintaining strict data privacy and providing comprehensive health management tools specifically designed for women's physiological and psychological well-being.

Whether you're an employee tracking your health journey, an HR professional analyzing workforce wellness trends, or an organization administrator managing health programs, Sanicle-AI provides the tools and insights needed to foster a healthier, more supportive workplace environment.

Note

  • Next.js 15 and React 19 for cutting-edge performance
  • PostgreSQL with advanced multi-tenant data isolation
  • Dual AI system combining IBM Watson X and Google Gemini
  • Enterprise-grade security with role-based access control
Experience our platform firsthand with no installation required.
Comprehensive documentation and integration guides available.

Tip

⭐ Star us to receive notifications about new features and updates!

✨ Key Features

Experience next-generation health tracking designed specifically for women's wellness. Our innovative approach provides unprecedented insights through advanced tracking capabilities and personalized analytics.

Health Calendar Demo

Comprehensive Health Calendar with Period Tracking

Key capabilities include:

  • 🌸 Menstrual Cycle Tracking: Advanced cycle prediction and symptom monitoring
  • 😊 Mood & Wellness: Emotional well-being tracking with stress level indicators
  • 💤 Sleep & Lifestyle: Sleep pattern analysis and lifestyle factor correlation
  • 📊 Health Analytics: Personalized insights and trend analysis

Revolutionary AI-powered health support that combines the best of enterprise AI platforms. Our dual AI system provides comprehensive health guidance through multiple interaction channels.

AI Assistant Interface

Dual AI System - IBM Watson X and Google Gemini

AI Capabilities:

  • IBM Watson X: Enterprise-grade chat widget for quick health conversations
  • Google Gemini: In-depth health consultations with comprehensive analysis
  • 24/7 Availability: Always-on health support and guidance
  • Privacy-First: Secure, confidential interactions with advanced encryption

* Enterprise Features

Beyond core health features, Sanicle-AI includes comprehensive enterprise functionality:

  • 🏢 Multi-Tenant Architecture: Complete data isolation between organizations
  • 👥 Role-Based Access Control: Employee, HR, Admin, and Super Admin levels
  • 📋 Leave Management: Health-related leave requests with AI assistance
  • 📚 Resource Management: Educational materials and policy document distribution
  • 📅 Event Management: Health workshops, webinars, and wellness programs
  • 📊 Analytics Dashboard: Anonymized workforce health insights for HR
  • 🔐 Enterprise Security: GDPR-compliant with audit logging
  • 📱 Mobile Responsive: Progressive Web App with native-like experience

✨ Continuously expanding with new features based on user feedback and healthcare best practices.

🛠️ Tech Stack

Next.js
Next.js 15
React
React 19
TypeScript
TypeScript 5
PostgreSQL
PostgreSQL
Drizzle ORM
Drizzle ORM
Tailwind CSS
Tailwind CSS
IBM Watson X
IBM Watson X
Google AI
Google Gemini

Frontend Excellence:

  • Framework: Next.js 15 with App Router and React 19 RC
  • Language: TypeScript for enterprise-grade type safety
  • Styling: Tailwind CSS with custom design system + Framer Motion
  • UI Components: Radix UI primitives with custom health-focused components
  • State Management: React hooks with SWR for data fetching

Backend Power:

  • Runtime: Node.js with Edge Runtime support
  • Database: PostgreSQL with advanced multi-tenant architecture
  • ORM: Drizzle ORM for type-safe database operations
  • Authentication: NextAuth.js with JWT and session management
  • File Storage: Vercel Blob for secure document storage

AI & Intelligence:

  • Dual AI System: IBM Watson X for quick interactions, Google Gemini for deep consultations
  • Health Focus: Custom training and prompts for women's health expertise
  • Streaming: Real-time AI responses with Server-Sent Events

DevOps & Deployment:

  • Platform: Vercel with automatic deployments
  • Database: Vercel Postgres with connection pooling
  • Monitoring: Built-in analytics and error tracking
  • Security: Enterprise-grade with GDPR compliance

Tip

Each technology was selected for production readiness, developer experience, and scalability for enterprise health data management.

🏗️ Architecture

System Architecture

Tip

This architecture supports horizontal scaling and enterprise multi-tenant patterns, ensuring data isolation and performance at scale.

graph TB
    subgraph "Client Layer"
        A[Next.js 15 App] --> B[React 19 Components]
        B --> C[Zustand State]
        C --> D[SWR Data Layer]
    end
    
    subgraph "API Layer"
        E[Next.js API Routes] --> F[Business Logic]
        F --> G[Drizzle ORM]
        G --> H[PostgreSQL]
    end
    
    subgraph "AI Services"
        I[IBM Watson X]
        J[Google Gemini]
        K[Health AI Middleware]
    end
    
    subgraph "External Services"
        L[NextAuth.js]
        M[Vercel Blob]
        N[Analytics]
        O[Audit Logging]
    end
    
    D --> E
    F --> K
    K --> I
    K --> J
    F --> L
    F --> M
    F --> N
    F --> O
    
    subgraph "Infrastructure"
        P[Vercel Edge]
        Q[CDN]
        R[Connection Pooling]
    end
    
    A --> P
    P --> Q
    H --> R
Loading

Multi-Tenant Data Flow

flowchart TB
    subgraph "Organization A"
        OA_Users[Users]
        OA_Health[Health Data]
        OA_Events[Events]
    end
    
    subgraph "Organization B"
        OB_Users[Users]
        OB_Health[Health Data]
        OB_Events[Events]
    end
    
    subgraph "Database Layer"
        DB[(PostgreSQL)]
        Isolation[Data Isolation]
    end
    
    subgraph "Access Control"
        RBAC[Role-Based Access]
        OrgFilter[Organization Filtering]
        DataMask[Data Anonymization]
    end
    
    OA_Users --> RBAC
    OB_Users --> RBAC
    RBAC --> OrgFilter
    OrgFilter --> Isolation
    Isolation --> DB
    DB --> DataMask
    DataMask --> Analytics[HR Analytics]
Loading

Component Structure

app/
├── (auth)/                    # Authentication layout group
│   ├── login/                # Login with organization context
│   ├── register/             # Multi-tenant registration
│   └── auth.ts               # NextAuth.js configuration
├── employee-dashboard/        # Employee health management
│   ├── [userId]/
│   │   ├── components/       # Health tracking components
│   │   ├── resources/        # Educational materials
│   │   ├── events/          # Health events & workshops
│   │   └── feedback/        # Anonymous feedback
├── hr-dashboard/             # HR workforce analytics
│   ├── [userId]/
│   │   ├── components/       # Analytics & management
│   │   ├── events/          # Event management
│   │   ├── resources/       # Resource upload/management
│   │   └── feedback/        # Feedback review
├── admin-dashboard/          # Organization administration
├── super-admin/             # Platform administration
├── api/                     # API routes
│   ├── auth/               # Authentication endpoints
│   ├── health-records/     # Health data management
│   ├── events/            # Event management
│   ├── resources/         # Resource management
│   ├── watsonx-chat/      # IBM Watson X integration
│   └── organizations/     # Multi-tenant management
└── (chat)/                 # Google Gemini AI chat

🚀 Getting Started

Prerequisites

Important

Ensure you have the following installed and configured:

  • Node.js 18.0+ (Download)
  • PostgreSQL 15.0+ for production-grade database
  • Git for version control
  • npm/pnpm/yarn package manager
  • IBM Cloud Account for Watson X AI (optional)
  • Google Cloud Account for Gemini AI (optional)

Quick Installation

1. Clone the Repository

git clone https://github.com/ChanMeng666/sanicle-ai.git
cd sanicle-ai

2. Install Dependencies

# Using npm
npm install

# Using pnpm (recommended for performance)
pnpm install

# Using yarn
yarn install

3. Environment Configuration

# Copy environment template
cp .env.example .env.local

# Edit with your configuration
nano .env.local  # or your preferred editor

Environment Setup

Create .env.local file with the following configuration:

# Database Configuration
POSTGRES_URL="postgresql://username:password@localhost:5432/sanicle_db"

# Authentication
AUTH_SECRET="your-secret-key-generate-with-openssl"
NEXTAUTH_URL="http://localhost:3000"

# AI Integration (Optional)
# Google Gemini AI
GOOGLE_GENERATIVE_AI_API_KEY="your-gemini-api-key"

# IBM Watson X AI  
WATSONX_API_KEY="your-watsonx-api-key"
WATSONX_DEPLOYMENT_ID="your-deployment-id"
NEXT_PUBLIC_WATSONX_API_URL="https://us-south.ml.cloud.ibm.com/ml/v4/deployments"

# File Storage (Optional)
BLOB_READ_WRITE_TOKEN="your-vercel-blob-token"

# Analytics (Optional)
VERCEL_ANALYTICS_ID="your-analytics-id"

Tip

Use openssl rand -base64 32 to generate secure random secrets for AUTH_SECRET.

Database Setup

# Generate database migrations
npm run db:generate

# Apply database schema
npm run migrate

# Seed system roles
npm run db:seed:roles

# (Optional) Add test data
npm run db:seed:testdata

5. Start Development Server

npm run dev

🎉 Success! Open http://localhost:3000 to access Sanicle-AI.

Default Test Accounts:

🛳 Deployment

Important

Choose the deployment strategy that fits your organization's needs. Vercel is recommended for rapid deployment and scaling.

A Cloud Deployment

Vercel (Recommended)

Deploy with Vercel

Manual Deployment:

# Install Vercel CLI
npm i -g vercel

# Deploy to production
vercel --prod

Other Platforms:

Deploy with Netlify Deploy with Railway
Deploy to Netlify Deploy on Railway

B Docker Deployment

# Build Docker image
docker build -t sanicle-ai .

# Run container
docker run -p 3000:3000 --env-file .env.local sanicle-ai

# Or use Docker Compose
docker-compose up -d

docker-compose.yml:

version: '3.8'
services:
  app:
    build: .
    ports:
      - "3000:3000"
    environment:
      - POSTGRES_URL=${POSTGRES_URL}
      - AUTH_SECRET=${AUTH_SECRET}
      - NEXTAUTH_URL=${NEXTAUTH_URL}
    depends_on:
      - db
  
  db:
    image: postgres:15
    environment:
      POSTGRES_DB: sanicle_db
      POSTGRES_USER: sanicle_user
      POSTGRES_PASSWORD: secure_password
    volumes:
      - postgres_data:/var/lib/postgresql/data
    ports:
      - "5432:5432"

volumes:
  postgres_data:

C Environment Variables

Warning

Never commit sensitive environment variables to version control. Use secure secret management in production.

Variable Description Required Example
POSTGRES_URL PostgreSQL connection string postgresql://user:pass@localhost:5432/db
AUTH_SECRET NextAuth.js secret key generated-secret-key
NEXTAUTH_URL Application URL https://yourdomain.com
GOOGLE_GENERATIVE_AI_API_KEY Google Gemini AI key 🔶 AIzaSy...
WATSONX_API_KEY IBM Watson X API key 🔶 IBMCloud...
WATSONX_DEPLOYMENT_ID Watson X deployment ID 🔶 deployment-id-123
BLOB_READ_WRITE_TOKEN File storage token 🔶 vercel_blob_token

Note

✅ Required for core functionality, 🔶 Optional for enhanced features

🖥️ Multi-Level Dashboard System

Sanicle-AI features a sophisticated role-based dashboard system designed to serve different organizational needs while maintaining data privacy and security.

Employee Dashboard

The Employee Dashboard provides a comprehensive health management experience:

Employee Dashboard

Employee Dashboard - Personal Health Management Hub

Core Features:

  • 📅 Health Calendar: Advanced menstrual cycle tracking with symptom monitoring
  • 😊 Mood Tracking: Emotional well-being assessment with stress level indicators
  • 🤖 AI Health Assistant: 24/7 access to both Watson X and Gemini AI support
  • 🏥 Medical Appointments: Healthcare visit scheduling and management
  • 📚 Resource Library: Access to educational materials about women's health
  • 📝 Leave Management: Health-related leave requests with AI assistance
  • 📅 Events: Registration for health workshops and wellness programs

HR Dashboard

The HR Dashboard offers powerful workforce analytics while maintaining employee privacy:

HR Dashboard

HR Dashboard - Workforce Health Analytics

Key Capabilities:

  • 📊 Anonymized Analytics: Workforce health trends without individual identification
  • 📋 Leave Management: Process and approve health-related leave requests
  • 📚 Resource Management: Upload and distribute educational materials
  • 📅 Event Coordination: Create and manage health-related events and workshops
  • 👥 Team Oversight: Manage assigned employee groups
  • 💬 Feedback Analysis: Review anonymous employee feedback and suggestions
  • 📈 Health Metrics: Organization-wide wellness trends and insights

Organization Admin Dashboard

Comprehensive organizational management for company administrators:

Administrative Powers:

  • 👥 User Management: Create, modify, and deactivate user accounts across the organization
  • 🔐 Role Assignment: Assign HR managers and configure access permissions
  • 💼 Subscription Management: Manage organizational subscription and billing
  • ⚙️ Organization Settings: Configure company-specific parameters and policies
  • 🏢 Department Structure: Organize users by departments and teams
  • 📊 Analytics Overview: View organization-wide usage and health statistics
  • 🔍 Audit Access: Review system activity logs for compliance and security

Super Admin Dashboard

System-wide administration for Sanicle platform management:

Platform Control:

  • 🌐 Multi-Tenant Management: Create and configure organizations
  • 👑 Global User Management: Oversee all platform users across organizations
  • 📈 Platform Analytics: Monitor system-wide performance and usage
  • ⚙️ Global Settings: Configure platform-wide parameters and features
  • 🔒 Security Oversight: Manage security policies and compliance
  • 📋 Audit Logging: Comprehensive activity tracking for all organizations
  • 🚀 Feature Management: Enable/disable features across the platform

🤖 Dual AI Integration

Sanicle-AI uniquely combines two powerful AI systems to provide comprehensive health support through different interaction modalities.

IBM Watson X AI

Enterprise-grade AI integration through a convenient chat widget:

Watson X Chat Widget

Watson X AI - Always Available Chat Widget

Features:

  • 💬 Always-Available Widget: Floating chat button in employee dashboard
  • Real-time Streaming: Dynamic response generation with typing indicators
  • 🏥 Health-Focused Training: Specialized prompts for women's health conversations
  • 🔒 Enterprise Security: IBM Cloud's robust security infrastructure
  • 📝 Leave Assistance: Help with creating and submitting leave requests

Technical Implementation:

// Watson X API integration
const response = await fetch("/api/watsonx-chat", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({
    messages: conversationHistory,
    streaming: true
  }),
});

Google Gemini AI

In-depth health consultations through dedicated chat interface:

Capabilities:

  • 🔍 Deep Analysis: Comprehensive health consultations and detailed guidance
  • 🎯 Contextual Understanding: Advanced conversation context and memory
  • 📊 Health Insights: Detailed explanations of health patterns and recommendations
  • 🌐 Full-Page Experience: Distraction-free environment for focused consultations
  • 📱 Multi-Modal Support: Text, image, and document analysis capabilities

AI Comparison

Feature IBM Watson X Google Gemini
Access Method Floating widget in dashboard Dedicated page via navigation
Interaction Style Quick, contextual conversations In-depth health consultations
Best For Brief questions during dashboard use Dedicated health consultation sessions
Response Style Concise, targeted answers Comprehensive explanations
Integration Always available in context Focused, distraction-free space
Use Cases Leave requests, quick health tips Detailed health analysis, education

🔒 Privacy & Security

Sanicle-AI implements enterprise-grade security measures designed specifically for sensitive health data:

Data Protection:

  • 🏢 Multi-Tenant Isolation: Complete data separation between organizations
  • 🔒 End-to-End Encryption: All health data encrypted in transit and at rest
  • 👁️ Data Anonymization: HR dashboards show only aggregated, anonymized insights
  • 🛡️ Role-Based Access Control: Strict permissions based on user roles and organization
  • 📋 GDPR Compliance: Full compliance with European data protection regulations

Security Architecture:

  • 🔐 JWT Authentication: Secure token-based authentication with NextAuth.js
  • 🔑 API Key Management: Secure server-side handling of all external API credentials
  • 📊 Audit Logging: Comprehensive activity tracking for compliance and security monitoring
  • 🚫 Data Minimization: Only necessary data collected and processed
  • 🗑️ Right to Deletion: Complete data removal capabilities for GDPR compliance

Technical Security:

  • 🛡️ SQL Injection Prevention: Parameterized queries and ORM protection
  • 🔒 XSS Protection: Content Security Policy and input sanitization
  • 🌐 HTTPS Enforcement: All communications encrypted with TLS
  • 🔄 Regular Security Updates: Automated dependency updates and vulnerability scanning

🗄️ Database Schema

Our carefully designed database schema supports multi-tenant architecture with complete data isolation:

Core Tables:

  • Organization: Multi-tenant organization information and subscription details
  • User: User profiles with organization relationships and role assignments
  • Employee: Employee-specific profile data and organizational hierarchy
  • Role & UserRole: Flexible role-based access control system

Health Data:

  • HealthRecord: Comprehensive health tracking (cycles, symptoms, mood, sleep)
  • LeaveRequest: Health-related leave management with approval workflows
  • Feedback: Anonymous employee feedback system for continuous improvement

Platform Features:

  • Event & EventRegistration: Health workshops, webinars, and wellness programs
  • ResourceFile: Educational materials and policy document management
  • Chat: AI conversation history and interaction tracking
  • AuditLog: Security and compliance activity tracking

Data Relationships:

erDiagram
    Organization ||--o{ User : "belongs to"
    User ||--o{ Employee : "has profile"
    User ||--o{ UserRole : "has roles"
    Role ||--o{ UserRole : "defines"
    User ||--o{ HealthRecord : "tracks"
    User ||--o{ LeaveRequest : "submits"
    User ||--o{ EventRegistration : "registers"
    Organization ||--o{ Event : "hosts"
    Organization ||--o{ ResourceFile : "manages"
Loading

📖 API Reference

Comprehensive REST API with OpenAPI documentation:

Authentication Endpoints:

POST /api/auth/login         # User authentication
POST /api/auth/register      # Multi-tenant user registration
POST /api/auth/logout        # Secure session termination

Health Data Management:

GET    /api/health-records            # Retrieve user health records
POST   /api/health-records            # Create new health record
PUT    /api/health-records/[id]       # Update existing record
DELETE /api/health-records/[id]       # Delete health record

Organization Management:

GET    /api/organizations             # List organizations (role-based)
POST   /api/organizations             # Create organization (super admin)
GET    /api/organizations/[id]/users  # Organization user management
PATCH  /api/organizations/[id]/users/[userId]  # Update user roles

AI Integration:

POST   /api/watsonx-chat             # IBM Watson X AI conversations
POST   /api/gemini-chat              # Google Gemini AI interactions

Event & Resource Management:

GET    /api/events                   # List health events
POST   /api/events                   # Create event (HR/Admin)
POST   /api/events/[id]/register     # Register for event
GET    /api/resources                # Educational resources
POST   /api/resources                # Upload resource (HR/Admin)

Tip

All API endpoints support JSON format and require proper authentication headers. Full API documentation available at /api/docs when running the application.

🤝 Contributing

We welcome contributions to improve Sanicle-AI! Here's how you can help:

Development Process:

# 1. Fork the repository
git fork https://github.com/ChanMeng666/sanicle-ai.git

# 2. Create feature branch
git checkout -b feature/amazing-health-feature

# 3. Make your changes
# Follow our coding standards and add tests

# 4. Commit changes
git commit -m "feat: add amazing health feature"

# 5. Push and create PR
git push origin feature/amazing-health-feature

Contribution Guidelines:

  • TypeScript First: All code must be written in TypeScript with proper types
  • Health Focus: Ensure contributions align with women's health mission
  • Privacy Compliance: Maintain GDPR compliance and data protection
  • Testing Required: Add tests for new features and bug fixes
  • Documentation: Update README and API docs as needed

Areas for Contribution:

  • 🏥 Health Features: New tracking capabilities and health insights
  • 🤖 AI Enhancements: Improved AI prompts and conversation flows
  • 🎨 UI/UX Improvements: Better user experience and accessibility
  • 🔒 Security Features: Enhanced privacy and compliance measures
  • 📊 Analytics: New reporting and visualization capabilities
  • 🌐 Internationalization: Multi-language support for global reach

📄 License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

Open Source Benefits:

  • ✅ Commercial use allowed
  • ✅ Modification allowed
  • ✅ Distribution allowed
  • ✅ Private use allowed
  • ✅ Patent use allowed

👥 Team

Chan Meng
Chan Meng

Creator & Lead Developer
Full-Stack Development • AI Integration • Health Tech

Contact Information:


🌸 Empowering Women's Health in the Workplace 💪
Building a healthier future through technology and compassion

Star us on GitHub • 📖 Read the Documentation • 🐛 Report Issues • 💡 Request Features • 🤝 Contribute



Made with ❤️ for women's health and workplace wellness

GitHub stars GitHub forks

About

【⭐️ Star this repo to support workplace wellness innovation!】A comprehensive women's health platform designed for workplace wellness. This Next.js application offers personalized health tracking for female employees while providing HR departments with anonymized data insights for better workforce planning and employee support.

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

Packages

No packages published