Skip to content

Installation

This guide will walk you through installing Jubiloop and all its dependencies.

Clone the Repository

First, clone the Jubiloop repository to your local machine:

bash
git clone <repository-url>
cd jubiloop

Install Dependencies

Jubiloop uses Turborepo with npm workspaces to manage dependencies across the monorepo. Install all dependencies with a single command:

bash
npm install

This command will:

  • Install dependencies for all applications (webapp, server, marketing)
  • Install dependencies for all shared packages
  • Set up Husky git hooks for code quality enforcement
  • Configure the monorepo workspace links

What Happens During Installation

Dependency Installation

The installation process installs dependencies across the entire monorepo structure:

jubiloop/
├── apps/
│   ├── server/            # AdonisJS API backend dependencies
│   ├── webapp/            # React frontend dependencies
│   └── marketing/         # Next.js marketing site dependencies
├── packages/              # Shared package dependencies
│   ├── eslint-config/
│   ├── typescript-config/
│   ├── ui/
│   └── vitest-config/

Husky Git Hooks

Husky will automatically set up git hooks that:

  • Format code before commits using Prettier
  • Run ESLint checks on staged files
  • Ensure code quality standards are maintained

Troubleshooting Installation

Common Issues

npm Install Fails

If npm install fails, try:

bash
# Clear npm cache
npm cache clean --force

# Delete node_modules and package-lock.json
rm -rf node_modules package-lock.json
rm -rf apps/*/node_modules packages/*/node_modules

# Reinstall
npm install

Permission Errors

On macOS/Linux, if you encounter permission errors:

bash
# Use sudo (not recommended for regular use)
sudo npm install

# Or fix npm permissions (recommended)
mkdir ~/.npm-global
npm config set prefix '~/.npm-global'
echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.bashrc
source ~/.bashrc

Node Version Issues

Ensure you're using Node.js v22 or later (LTS):

bash
# Check current version
node --version

# If using nvm, switch to v22
nvm install 22
nvm use 22

Verify Installation

After installation completes, verify everything is set up correctly:

bash
# Check if all workspaces are linked
npm ls --depth=0

# Verify Turborepo is installed
npx turbo --version

# Check git hooks are installed
ls -la .husky/

Next: Local Development Setup

Built with ❤️ by the Jubiloop team