English | 中文
Thank you for considering contributing to Onionl-UI! Here are the guidelines for participating in the project development.
Please ensure your behavior adheres to our code of conduct:
- Maintain respect and inclusivity towards others
- Accept constructive criticism
- Focus on what's best for the community
- Show empathy
If you find a bug, please create an issue with the following information:
- Detailed description of the bug
- Steps to reproduce
- Expected behavior
- Actual behavior
- Screenshots (if applicable)
- Environment (OS, browser version, etc.)
If you want to develop a component, please follow these steps:
- Check Issues and PR list to ensure no duplicate work
- Review the TODO file to confirm if the component is in the development plan
- Create a new Issue describing the component you want to develop
- Wait for maintainer confirmation and discussion
- Start development and submit PR
If you have suggestions for new components:
- First check the issue list to see if it's already proposed
- Create a new issue with detailed feature description
- Explain why this feature would be valuable to the project
- Fork the repository
git clone https://github.com/Onion-L/onionl-ui.git
- Create your feature branch
git checkout -b feature/AmazingFeature
- Commit your changes
git commit -m 'add some feature'
- Push to the branch
git push origin feature/AmazingFeature
- Create a Pull Request
Commit messages should follow this format:
feat
: New featurefix
: Bug fixwip
: Work in progressdocs
: Documentation changesstyle
: Code style changeslint
: Lint-related changesrefactor
: Code refactoringperf
: Performance improvementstest
: Test case modificationschore
: Other changesbuild
: Build-related changesci
: CI-related changes
Example: feat: add new component
- Write code in TypeScript
- Follow the project's established code style
- Ensure code passes ESLint checks
- Write tests for new features
- Keep code concise, following DRY principles
- Install dependencies:
npm install
- Build project:
npm run build
- Start development server:
npm run dev
- Run tests:
npm run test
Note: Component development depends on UnoCSS Preset, please start the play project after completing the build command
- Ensure PR description clearly states the changes and reasons
- Ensure all automated tests pass
- Update relevant documentation if applicable
- Request review from at least one maintainer
- Make modifications based on feedback
If you need help during the contribution process:
- Check project documentation
- Ask questions in issues
- Contact project maintainers
Thank you again for your contribution✨