Contributors
Help make d3-ui better! We welcome all contributions, no matter how big or small.
Ways to Contribute
Whether you're a developer, designer, writer, or simply a passionate user, there are many ways you can help:
Code
Fix bugs, improve performance, add new components, or enhance existing ones.
Documentation
Improve docs, write examples, create tutorials, or clarify usage.
Ideas
Suggest new components, features, or improvements via discussions.
Tests
Write unit tests, integration tests, or improve test coverage.
Feedback
Try the library, report issues, or share your experience.
Design
Help improve the visual design and user experience.
Getting Started
Follow these steps to get started contributing to d3-ui:
Fork the repository
Click the fork button on GitHub to create your own copy of the project.
Clone your fork
Clone your fork locally: git clone https://github.com/YOUR_USERNAME/d3-ui.git
Create a branch
Create a new branch for your feature: git checkout -b feature/your-feature
Make changes
Make your changes and commit them with clear, descriptive messages.
Push your branch
Push your changes to your fork: git push origin feature/your-feature
Open a Pull Request
Go to the original repo and click 'New Pull Request' to describe your changes.
Development Setup
Prerequisites
- Node.js 16+ and npm or yarn
- Git
- A code editor (VS Code recommended)
Installation
# Install dependencies npm install # Run development server npm run dev # Run tests npm run test # Build for production npm run build
Code Guidelines
Coding Standards
- Follow the existing code style and conventions
- Use TypeScript for type safety
- Write clear, descriptive variable and function names
- Add comments for complex logic
- Write tests for new features
Commit Messages
Write clear, descriptive commit messages that explain what changes you made and why:
# Good feat: Add useD3Transition hook for smooth animations fix: Handle edge case in ScatterPlot data mapping docs: Improve BarChart examples and documentation # Avoid updated files fix stuff changes
Pull Requests
- Provide a clear description of what your PR does
- Link to any related issues using #issue-number
- Include before/after screenshots for UI changes
- Make sure all tests pass
- Keep PRs focused on a single feature or fix
Report Issues
Found a bug? Have a feature request? We'd love to hear about it! Please open an issue on GitHub.
Open an IssueCommunity & Support
Join our community to discuss ideas, ask questions, and connect with other contributors:
Thank You!
A huge thanks to everyone who contributes!
Whether it's code, documentation, feedback, or design—your contributions help make d3-ui better for everyone. We appreciate your time and effort!