Skip to content

Latest commit

 

History

20 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OptiChads App Monorepo

This repository uses Rush for monorepo management.

Getting Started

  1. Install Rush globally (if not already installed):
npm install -g @microsoft/rush
  1. Install all dependencies:
rush update
  1. Build all projects:
rush build
  1. Start the development server:
rush start

Common Rush Commands

Dependency Management

  • rush update - Install/update dependencies for all projects
  • rush update --full - Force clean and reinstall all dependencies
  • rush add -p <package> - Add a package to the current project
  • rush add -p <package> --make-consistent - Add a package and enforce version across all projects
  • rush check - Check for inconsistent dependency versions

Building and Running

  • rush build - Build all projects
  • rush rebuild - Clean and rebuild all projects
  • rush build -t <project> - Build a specific project and its dependencies
  • rush build --to-except <project> - Build all projects except the specified one
  • rush start - Start the development server
  • rush start -t <project> - Start the development server for a specific project
  • rush start --to-except <project> - Start the development server for all projects except the specified one

Development

  • rush change - Generate change logs for publishing
  • rush purge - Clean up all temporary files and node_modules
  • rushx test - Run tests
  • rushx <script> - Run a package.json script in the current project

Project-Specific Commands

OpticHads Website (apps/optichads-website)

cd apps/optichads-website
rushx dev        # Start development server
rushx build      # Build for production
rushx start      # Start production server
rushx lint       # Run ESLint

Shared UI Library (packages/shared-ui)

cd packages/shared-ui
rushx build      # Build the library
rushx dev        # Build in watch mode
rushx clean      # Clean build outputs

Common Development Workflows

Starting Development

  1. Get latest changes:
git pull
rush update
  1. Start the website development server:
cd apps/optichads-website
rushx dev

Adding a New Package/Dependency

  1. Add to a specific project:
cd <project-directory>
rush add -p <package-name>
  1. Add to all projects:
rush add -p <package-name> --make-consistent

Making Changes Across Multiple Projects

  1. Make your code changes
  2. Build affected projects:
rush build

Before Committing

  1. Check for dependency issues:
rush check
  1. If publishing changes:
rush change

Project Structure

optichads-app/
├── apps/
│   └── optichads-website/     # Next.js website
├── packages/
│   └── shared-ui/            # Shared UI components
├── common/                   # Rush configuration files
└── rush.json                # Rush configuration

Additional Resources

About

a new platform for the optichads team

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages