Thanks for your interest in contributing to QRScout! This guide will help you get set up for local development.
- Node.js (v18 or higher)
- npm (comes with Node.js)
git clone https://github.com/FRC2713/QRScout.git
cd QRScoutnpm installCopy the example environment file:
cp .env.example .envThen edit .env and add your Blue Alliance API key:
VITE_TBA_API_KEY=your_api_key_here
To get a TBA API key:
- Go to The Blue Alliance
- Sign in or create an account
- Navigate to More > Account > Read API Keys
- Create a new key and copy it to your
.envfile
Note: The API key is only required if you're working on features that use The Blue Alliance integration. Other features will work without it.
npm run devThe app will be available at http://localhost:5173/QRScout/
| Command | Description |
|---|---|
npm run dev |
Start development server |
npm run build |
Build for production |
npm run preview |
Preview production build |
npm run schema |
Generate JSON schema |
- TypeScript: Strict mode enabled
- Formatting: 2 space indent, 80 char width, single quotes
- Components: Functional components with TypeScript interfaces
- State Management: Zustand with immer for immutable updates
- Styling: Tailwind CSS with
cnutility for class merging
src/
components/ # React components
ui/ # Reusable UI components (shadcn/ui)
store/ # Zustand state management
types/ # TypeScript type definitions
lib/ # Utility libraries
util/ # Helper utilities
- Fork the repository
- Create a feature branch (
git checkout -b feature/my-feature) - Make your changes
- Test locally with
npm run buildto ensure it compiles - Commit your changes with a descriptive message
- Push to your fork and open a Pull Request
Open an issue on the GitHub repository if you have questions or run into problems.