Thank you for your interest in contributing to Internet Object! This document provides guidelines and information for contributors.
By participating in this project, you agree to abide by our Code of Conduct.
Before submitting a bug report:
- Check the existing issues to avoid duplicates
- Use the latest version to see if the issue has been fixed
- Provide a clear, descriptive title
- Include steps to reproduce the issue
- Add code samples or test cases if possible
We welcome feature suggestions! Please:
- Check existing issues and discussions first
- Clearly describe the use case and benefit
- Provide examples of how the feature would work
- Fork the repository and create your branch from
main - Install dependencies with
yarn install - Make your changes with clear, descriptive commits
- Add tests for any new functionality
- Run tests with
yarn testto ensure everything passes - Update documentation if needed
- Submit your pull request with a clear description
# Clone your fork
git clone https://github.com/maniartech/InternetObject-js.git
cd InternetObject-js
# Install dependencies
yarn install
# Run tests
yarn test
# Run tests in watch mode
yarn test:watch
# Build the project
yarn build
# Type checking
yarn type-check- TypeScript: All code must be written in TypeScript
- Formatting: Follow the
.editorconfigsettings (2 spaces, UTF-8, LF line endings) - Testing: Write tests for new features and bug fixes
- Documentation: Document public APIs with JSDoc comments
src/ # Source code
tests/ # Test files
docs/ # Documentation
dist/ # Built output (generated)
Use clear, descriptive commit messages:
feat: add new validation methodfix: resolve parsing issue with nested objectsdocs: update API documentationtest: add tests for edge casesrefactor: simplify schema compilation
Feel free to open an issue for any questions or reach out to the maintainers.
By contributing, you agree that your contributions will be licensed under the ISC License.