# Contributing to WidgetBoard Thank you for your interest in contributing to WidgetBoard! This document provides guidelines and instructions for contributing to the project. ## Code of Conduct We are committed to providing a welcoming and inclusive environment. Please be respectful and professional in all interactions. ## Code Style Guidelines **EMOJIS ARE STRICTLY FORBIDDEN** in all code, comments, documentation, and commit messages. Never use emojis anywhere in the codebase. ## Getting Started ### Prerequisites - Node.js 18+ or 20+ - npm 9+ - Git - Familiarity with React, TypeScript, and modern web development ### Setup Development Environment 1. Fork the repository on GitHub 2. Clone your fork locally: ```bash git clone https://github.com/YOUR_USERNAME/WidgeTDC.git cd WidgeTDC ``` 3. Add upstream remote: ```bash git remote add upstream https://github.com/Clauskraft/WidgeTDC.git ``` 4. Install dependencies: ```bash npm install --legacy-peer-deps ``` 5. Copy environment template: ```bash cp .env.example .env.local ``` 6. Start development server: ```bash npm run dev ``` ## Development Workflow ### Branch Naming Convention - `feature/description` - New features - `fix/description` - Bug fixes - `docs/description` - Documentation updates - `refactor/description` - Code refactoring - `test/description` - Test additions or modifications - `security/description` - Security fixes ### Making Changes 1. Create a new branch: ```bash git checkout -b feature/your-feature-name ``` 2. Make your changes following our coding standards 3. Write or update tests: ```bash npm test ``` 4. Run linter: ```bash npm run lint ``` 5. Format your code: ```bash npm run format ``` 6. Commit your changes: ```bash git commit -m "feat: add amazing feature" ``` ### Commit Message Convention We follow the [Conventional Commits](https://www.conventionalcommits.org/) specification: ``` ():