Thank you for your interest in contributing to envx! This document provides guidelines and instructions for contributing.
This project adheres to a Code of Conduct that all contributors are expected to follow. Please read CODE_OF_CONDUCT.md before contributing.
If you find a bug, please open an issue using the bug report template. Include:
- A clear description of the bug
- Steps to reproduce
- Expected vs actual behavior
- Environment details (OS, Node.js version, etc.)
- Any relevant error messages
Feature requests are welcome! Please open an issue using the feature request template and describe:
- The problem you're trying to solve
- Your proposed solution
- Any alternatives you've considered
- Fork the repository and clone your fork
- Create a branch for your changes:
git checkout -b feature/your-feature-name # or git checkout -b fix/your-bug-fix - Make your changes and ensure they work
- Test your changes:
npm run build npm run dev
- Commit your changes with clear, descriptive commit messages
- Push to your fork and open a Pull Request
-
Clone the repository:
git clone https://github.com/yourusername/envx.git cd envx -
Install dependencies:
npm install
-
Make your changes in the
src/directory -
Build the project:
npm run build
-
Test your changes:
npm run dev
- Use consistent formatting (consider using a formatter like Prettier)
- Write clear, descriptive variable and function names
- Add comments for complex logic
- Keep functions focused and small
- Follow existing code patterns
Write clear, descriptive commit messages:
- Use the imperative mood ("Add feature" not "Added feature")
- Keep the first line under 50 characters
- Add a blank line between the subject and body
- Explain what and why, not how
Example:
Add support for custom envx home directory
Allow users to override the default ~/.envx location
by setting the ENVX_HOME environment variable.
Before submitting a PR, please:
- Test your changes on your local machine
- Ensure the build completes successfully
- Test the functionality you've added or modified
- Check that existing functionality still works
- Update the README.md if you add new features or change behavior
- Add comments to complex code
- Update CHANGELOG.md for user-facing changes
If you have questions about contributing, feel free to open an issue with the "question" label.
Thank you for contributing to envx! 🎉