Skip to content

smshozab/MetaCore

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

4 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

MetaCore

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.

✨ Features

πŸ€– AI Meta Agent

  • 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

πŸ“Š Advanced Analytics

  • 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

πŸ“ Data Management

  • CSV import and export functionality
  • Saved analyses with version history
  • Structured data editor for manual entry
  • File management system with automatic backups

πŸ”’ Secure Authentication

  • Email/password authentication with bcrypt encryption
  • Google OAuth integration
  • JWT-based session management
  • User-specific data isolation

🎨 Additional Analysis Views

  • 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

πŸš€ Tech Stack

Frontend

  • 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

Backend

  • 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

πŸ“‹ Prerequisites

  • Node.js (v16+)
  • MongoDB instance (local or cloud, e.g., MongoDB Atlas)
  • Google OAuth credentials (optional, for Google login)

πŸ› οΈ Installation & Setup

1. Clone the Repository

git clone https://github.com/smshozab/MetaCore.git
cd MetaCore

2. Install Dependencies

npm install

3. Environment Configuration

Create 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:5174

πŸƒ Running the Application

Development Mode

Terminal 1 - Frontend (Vite dev server):

npm run dev

Runs on http://localhost:5173 with hot module replacement (HMR)

Terminal 2 - Backend (Express server):

npm run server

Runs on http://localhost:5000

Production Build

npm run build

Generates optimized production bundle in dist/

Preview Production Build

npm run preview

πŸ“ Project Structure

MetaCore/
β”œβ”€β”€ 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

πŸ”Œ API Endpoints

Authentication

  • POST /api/auth/signup - Register new user
  • POST /api/auth/login - Login with email/password
  • POST /api/auth/google - Google OAuth login
  • GET /api/auth/me - Get current user (requires auth)

Analyses

  • GET /api/analyses - List user's analyses
  • GET /api/analyses/:id - Get specific analysis
  • POST /api/analyses - Create new analysis
  • PUT /api/analyses/:id - Update analysis
  • DELETE /api/analyses/:id - Delete analysis

Files

  • GET /api/files - List uploaded files
  • POST /api/files - Upload file
  • GET /api/files/:id - Get file details
  • DELETE /api/files/:id - Delete file

Health

  • GET /api/health - Server health check

πŸ” Security Features

  • 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

πŸ“Š How to Use

  1. Sign Up/Login: Create account or use Google OAuth
  2. AI Agent: Upload study data and let AI generate comprehensive meta-analysis
  3. Data Editor: Manually enter or edit study information
  4. Generate Report: Create forest plots, bias assessments, and compliance reports
  5. Save Analysis: Store completed analyses for later retrieval and modification
  6. Export Results: Download data and visualizations for publication

πŸ§ͺ Code Quality

npm run lint

Runs ESLint to check code style and potential issues

πŸ“ Data Format

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)

🀝 Contributing

Contributions are welcome! Please:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

πŸ“„ License

This project is private. For licensing inquiries, please contact the repository owner.

πŸ’‘ Support & Contact

For issues, questions, or suggestions, please:

  • Open an issue on GitHub
  • Contact: [repository owner]

🎯 Roadmap

  • 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

πŸ“š Resources


Created with ❀️ for the research community

About

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.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors