CONTRIBUTING.md•2.96 kB
# Contributing to Shadcn UI MCP Server
Thank you for your interest in contributing! 🎉
We welcome contributions of all kinds—bug reports, feature requests, code, tests, and documentation. Please read these guidelines to help us maintain a collaborative and productive environment.
---
## 📚 Table of Contents
- [How to Contribute](#how-to-contribute)
- [Development Setup](#development-setup)
- [Coding Standards](#coding-standards)
- [Commit Messages](#commit-messages)
- [Code of Conduct](#code-of-conduct)
- [License](#license)
---
## How to Contribute
### 1. Reporting Issues
- Use [GitHub Issues](https://github.com/Jpisnice/shadcn-ui-mcp-server/issues) for bugs, feature requests, or questions.
- Please include:
- A clear, descriptive title
- Steps to reproduce (for bugs)
- Expected and actual behavior
- Screenshots or logs if helpful
### 2. Suggesting Enhancements
- Open an issue describing your idea and why it would be useful.
- Be open to discussion and feedback.
### 3. Submitting Pull Requests
1. **Fork the repository** and clone your fork.
2. **Create a new branch** for your change:
```bash
git checkout -b feature/your-feature-name
```
3. **Make your changes** and add tests if applicable.
4. **Run tests** to ensure nothing is broken.
5. **Commit with a clear message** (see below).
6. **Push your branch** and open a Pull Request (PR) against `main`.
7. **Describe your changes** in the PR and reference any related issues.
8. Be responsive to feedback and update your PR as needed.
---
## Development Setup
1. **Install dependencies**
```bash
npm install
```
2. **Build the project**
```bash
npm run build
```
3. **Run tests**
```bash
npm test
```
4. **Start the server locally**
```bash
npx @jpisnice/shadcn-ui-mcp-server --help
```
---
## Coding Standards
- Use [Prettier](https://prettier.io/) and [ESLint](https://eslint.org/) for formatting and linting.
- Write clear, concise comments and documentation.
- Keep functions and files focused and modular.
- Add or update tests for new features or bug fixes.
- Use TypeScript best practices.
---
## Commit Messages
- Use clear, descriptive commit messages.
- Recommended format:
- `Fix: short description of the fix`
- `Add: new feature description`
- `Update: what was updated`
- `Refactor: what was refactored`
- `Docs: documentation changes`
- Reference issues or PRs when relevant (e.g., `Fixes #123`).
---
## Code of Conduct
We are committed to a welcoming and inclusive environment. Please be respectful, constructive, and supportive. Harassment or discrimination of any kind will not be tolerated.
For details, see the [Contributor Covenant](https://www.contributor-covenant.org/version/2/1/code_of_conduct/).
---
## License
By contributing, you agree that your contributions will be licensed under the [MIT License](LICENSE).
---
Thank you for helping make this project better! 🙏