Advanced Meta-Analysis & Systematic Review Platform with AI-Powered Intelligence
MetaCore is a modern, full-stack web application designed to streamline meta-analysis research workflows. It combines AI-driven analysis capabilities with intuitive data visualization tools, making complex statistical analysis accessible to researchers and clinicians.
- Intelligent analysis automation using machine learning
- Structured reasoning with step-by-step data interpretation
- Automatic detection and handling of missing data
- Multi-outcome analysis support
- Multiple Effect Measures: Odds Ratio (OR), Risk Ratio (RR), Mean Difference (MD)
- Statistical Models: Random Effects (RE) and Fixed Effects (FE) models
- Interactive Visualizations: Forest plots, bias detection charts, compliance metrics
- Real-time Statistics: Dynamic calculations with instant feedback
- CSV import and export functionality
- Saved analyses with version history
- Structured data editor for manual entry
- File management system with automatic backups
- Email/password authentication with bcrypt encryption
- Google OAuth integration
- JWT-based session management
- User-specific data isolation
- Forest Plot Visualization: Study-by-study effect size display
- Bias Assessment: Publication bias and heterogeneity detection
- Compliance Tracking: Regulatory and protocol adherence monitoring
- Advanced Statistics: Extended statistical analysis options
- React 19 - Modern UI library with hooks
- Vite - Lightning-fast build tool and dev server
- Tailwind CSS 4 - Utility-first styling
- Lucide React - Beautiful icon library
- Context API - State management
- Node.js + Express 5 - Fast, scalable server
- MongoDB - NoSQL database
- Mongoose - MongoDB ODM
- JWT - Secure authentication
- bcryptjs - Password hashing
- Google Auth Library - OAuth integration
- CORS - Cross-origin request handling
- Node.js (v16+)
- MongoDB instance (local or cloud, e.g., MongoDB Atlas)
- Google OAuth credentials (optional, for Google login)
git clone https://github.com/smshozab/MetaCore.git
cd MetaCorenpm installCreate a .env file in the root directory:
# Database
MONGODB_URI=mongodb://localhost:27017/metacore
# or for MongoDB Atlas:
# MONGODB_URI=mongodb+srv://username:password@cluster.mongodb.net/metacore
# JWT
JWT_SECRET=your_jwt_secret_key_here
# Google OAuth (optional)
GOOGLE_CLIENT_ID=your_google_client_id_here
# Server
PORT=5000
# CORS
ALLOWED_ORIGINS=http://localhost:5173,http://localhost:5174Terminal 1 - Frontend (Vite dev server):
npm run devRuns on http://localhost:5173 with hot module replacement (HMR)
Terminal 2 - Backend (Express server):
npm run serverRuns on http://localhost:5000
npm run buildGenerates optimized production bundle in dist/
npm run previewMetaCore/
βββ src/ # React frontend
β βββ App.jsx # Main application component
β βββ main.jsx # React entry point
β βββ views/ # Feature-specific views
β β βββ AuthView.jsx # Login/signup
β β βββ AIAgentView.jsx # AI analysis interface
β β βββ DataView.jsx # Manual data editor
β β βββ ForestView.jsx # Forest plot visualization
β β βββ BiasView.jsx # Bias detection
β β βββ ComplianceView.jsx # Compliance tracking
β β βββ AdvancedView.jsx # Advanced statistics
β β βββ SavedAnalysesView.jsx # Analysis history
β βββ context/ # React Context
β β βββ AuthContext.jsx # Authentication state
β βββ utils/ # Helper utilities
β βββ statistics.js # Statistical calculations
β
βββ server/ # Express backend
β βββ index.js # Server entry point
β βββ config/
β β βββ db.js # MongoDB connection
β βββ models/
β β βββ User.js # User schema
β β βββ Analysis.js # Analysis schema
β β βββ FileUpload.js # File schema
β βββ routes/
β β βββ auth.js # Auth endpoints
β β βββ analyses.js # Analysis CRUD
β β βββ files.js # File management
β βββ middleware/
β βββ auth.js # JWT verification
β
βββ package.json
βββ vite.config.js
βββ .env # Environment variables
POST /api/auth/signup- Register new userPOST /api/auth/login- Login with email/passwordPOST /api/auth/google- Google OAuth loginGET /api/auth/me- Get current user (requires auth)
GET /api/analyses- List user's analysesGET /api/analyses/:id- Get specific analysisPOST /api/analyses- Create new analysisPUT /api/analyses/:id- Update analysisDELETE /api/analyses/:id- Delete analysis
GET /api/files- List uploaded filesPOST /api/files- Upload fileGET /api/files/:id- Get file detailsDELETE /api/files/:id- Delete file
GET /api/health- Server health check
- Password Encryption: bcryptjs with salt rounds
- JWT Tokens: 30-day expiration
- CORS Protection: Configurable allowed origins
- User Isolation: All data tied to authenticated user
- Email Verification: For OAuth providers
- Input Validation: Schema-level validation with Mongoose
- Sign Up/Login: Create account or use Google OAuth
- AI Agent: Upload study data and let AI generate comprehensive meta-analysis
- Data Editor: Manually enter or edit study information
- Generate Report: Create forest plots, bias assessments, and compliance reports
- Save Analysis: Store completed analyses for later retrieval and modification
- Export Results: Download data and visualizations for publication
npm run lintRuns ESLint to check code style and potential issues
MetaCore expects CSV data with study-level information including:
- Study name/identifier
- Sample sizes (treatment/control)
- Event counts or continuous measures
- Mean and standard deviation (for continuous outcomes)
Contributions are welcome! Please:
- Fork the repository
- Create a feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is private. For licensing inquiries, please contact the repository owner.
For issues, questions, or suggestions, please:
- Open an issue on GitHub
- Contact: [repository owner]
- Export to publication formats (PDF, DOCX)
- Real-time collaborative editing
- Advanced statistical methods (network meta-analysis)
- Automated bias assessment scoring
- Integration with research databases
- Mobile app version
Created with β€οΈ for the research community