Contributing

Thank you for your interest in contributing. This document provides guidelines for contributing to the project.


1 Documentation to Read First


2 Development Setup

git clone https://github.com/your-username/vizadvisor.git
cd vizadvisor
npm install
cp .env.example .env
# Add VITE_ANTHROPIC_API_KEY or VITE_OPENAI_API_KEY
npm run dev:full

3 Code Style

  • ESLint — Run npm run lint before committing
  • Prettier — Run npm run format for consistent formatting
  • Tests — Run npm test; add tests for new logic

4 Key Conventions

  • Components — Functional components, hooks for stateful logic
  • State — SessionContext for session data; SettingsContext for preferences
  • Services — Plain JS modules; no React in services
  • Naming — Descriptive, self-explanatory names (see [MOD_CODING] in project guidelines)

5 Pull Request Process

  1. Create a feature branch from main
  2. Implement changes with tests where appropriate
  3. Run npm run lint and npm test
  4. Update documentation if behavior changes
  5. Submit PR with a clear description

6 Questions

Open an issue for questions or discussions.