This repository uses Rush for monorepo management.
- Install Rush globally (if not already installed):
npm install -g @microsoft/rush- Install all dependencies:
rush update- Build all projects:
rush build- Start the development server:
rush startrush update- Install/update dependencies for all projectsrush update --full- Force clean and reinstall all dependenciesrush add -p <package>- Add a package to the current projectrush add -p <package> --make-consistent- Add a package and enforce version across all projectsrush check- Check for inconsistent dependency versions
rush build- Build all projectsrush rebuild- Clean and rebuild all projectsrush build -t <project>- Build a specific project and its dependenciesrush build --to-except <project>- Build all projects except the specified onerush start- Start the development serverrush start -t <project>- Start the development server for a specific projectrush start --to-except <project>- Start the development server for all projects except the specified one
rush change- Generate change logs for publishingrush purge- Clean up all temporary files and node_modulesrushx test- Run testsrushx <script>- Run a package.json script in the current project
cd apps/optichads-website
rushx dev # Start development server
rushx build # Build for production
rushx start # Start production server
rushx lint # Run ESLintcd packages/shared-ui
rushx build # Build the library
rushx dev # Build in watch mode
rushx clean # Clean build outputs- Get latest changes:
git pull
rush update- Start the website development server:
cd apps/optichads-website
rushx dev- Add to a specific project:
cd <project-directory>
rush add -p <package-name>- Add to all projects:
rush add -p <package-name> --make-consistent- Make your code changes
- Build affected projects:
rush build- Check for dependency issues:
rush check- If publishing changes:
rush changeoptichads-app/
├── apps/
│ └── optichads-website/ # Next.js website
├── packages/
│ └── shared-ui/ # Shared UI components
├── common/ # Rush configuration files
└── rush.json # Rush configuration