Contributing
Guide for contributing to Scout Core web library development
Contributing to Scout Core
Repository
The Scout project is hosted at: https://github.com/Adventurous-Bytes/scout
Prerequisites
- Node.js (version 18 or higher)
yarnpackage manager- Familiarity with react and redux
Development Setup
Initial Setup
# Clone the repository
git clone https://github.com/Adventurous-Bytes/scout.git
cd scout
# Install dependencies
yarn
# Set up environment variables
cp .env.example .env.local
# Edit .env.local with your configurationSubsystems
- Hooks: Located in
core/hooks/for data fetching and real-time updates - Types: Located in
core/types/for TypeScript definitions - Helpers: Located in
core/helpers/for API interactions - Store: Located in
core/store/for Redux state management
Type Generation
When the database schema changes, update types:
# Generate updated Supabase types
supabase gen types typescript --project-id "nfgpianoyribtvkqbjeq" --schema public > core/types/supabase.tsContribution Workflow
- Fork the repository
- Create a feature branch from
main- for example `feat/new-feature - Test your changes in a Next.js application (TODO: make it easier to test in operating environment)
- Update documentation if needed
- Submit a pull request with clear description of changes and Testing