Skip to content

alef-garrido/elearning-camp-FullStack

Repository files navigation

eLearning Camp Monorepo

This monorepo contains the full-stack application for the eLearning Camp platform.

Project Structure

/eLearning-Camp/
│
├── backend/        # Node.js/Express API
├── frontend/       # React frontend (coming soon)
├── package.json    # Root package.json
├── pnpm-workspace.yaml
└── turbo.json     # Turborepo configuration

Prerequisites

  • Node.js >= 18
  • pnpm >= 8.0.0

Getting Started

  1. Install pnpm if you haven't already:
npm install -g pnpm
  1. Install dependencies:
pnpm install
  1. Start development servers:
# Run both frontend and backend in development mode
pnpm dev

# Run only backend
pnpm dev --filter backend

Available Scripts

  • pnpm dev - Start all packages in development mode
  • pnpm build - Build all packages
  • pnpm test - Run tests across packages
  • pnpm lint - Lint all packages
  • pnpm clean - Clean all builds and node_modules

Package Documentation

Deployment with Docker

Build Images

From the repository root, build the frontend and backend images:

docker build -f frontend/Dockerfile -t elearning-frontend:prod .
docker build -f backend/Dockerfile -t elearning-backend:prod .

Run with Docker Compose

Use the included docker-compose.yml to run both services:

# For development profile
docker compose --profile dev up --build

# For production profile
docker compose --profile prod up --build

Environment Variables

  • Copy backend/.env.example to backend/.env and fill in your secrets and configuration.
  • Never commit secrets to version control. The .env file is gitignored.

License

MIT - See LICENSE for details.

About

FullStack web-app for elearning platform using Node.js+Express.js+MongoDB

Resources

License

Stars

Watchers

Forks