Skip to content

Latest commit

 

History

History
101 lines (63 loc) · 3.69 KB

CONTRIBUTING.md

File metadata and controls

101 lines (63 loc) · 3.69 KB

Contributing to CodebaseMD

We welcome contributions to CodebaseMD! Whether you’re fixing bugs, adding new features, improving documentation, or suggesting ideas, we appreciate your involvement. Before getting started, please review the following guidelines.

How to Contribute

1. Fork the Repository

  • Go to the CodebaseMD GitHub repository.
  • Click on the Fork button in the top-right corner to create a copy of the repository under your GitHub account.

2. Clone the Fork

Once you have forked the repository, clone it to your local machine:

git clone https://github.com/your-username/codebase-md.git
cd codebase-md

3. Create a Branch

Create a new branch for your work. This makes it easier to isolate your changes and submit them as a pull request.

git checkout -b feature/my-new-feature

4. Make Your Changes

  • For new features, be sure to update/add relevant tests.
  • For bug fixes, provide steps in your pull request for testing the fix.

5. Compile and Test Your Changes

Use Node.js 22.12+ (Node 24 recommended) and Git. Install dependencies and compile the TypeScript sources:

npm ci
npm run compile

If you made significant changes, also run tests to ensure everything works correctly:

npm test

Unit tests exercise production modules and use temporary Git repositories (Git must be installed). Run npm run test:integration for VS Code extension-host tests and npm run package to build a VSIX. Compiled output lives in out/; do not add generated JavaScript under src/.

Release maintainers

Update package.json, the lockfile, changelog, README and releases/RELEASE-NOTES-<version>.md. A commit on main whose message starts with release: triggers publication only after both Windows and Linux CI jobs pass. The release job packages the verified commit, creates a draft with the VSIX and SHA-256 checksum, and publishes it as the latest GitHub release. Ordinary commits and pull requests cannot publish. Existing release tags are not overwritten. Marketplace publication remains a separate explicit action.

6. Commit Your Changes

Write meaningful commit messages, following these guidelines:

  • Start with a lowercase verb, such as fix:, feat:, or docs:.
  • Keep the commit message short but descriptive.

Example commit message:

git add .
git commit -m "fix: resolve export error for unsupported file types"

7. Push the Branch

Push your changes to your forked repository:

git push origin feature/my-new-feature

8. Submit a Pull Request

Go to your fork on GitHub, and you should see a prompt to submit a pull request. Provide a meaningful description of the changes in the pull request, referencing any issues that are related.

We will review your pull request as soon as possible and provide feedback if needed.

Guidelines

  • Respect existing code standards: Follow the coding style and conventions used in the project.
  • Test thoroughly: Ensure your changes don’t break existing functionality.
  • Stay focused: Stick to the purpose of your pull request, and try not to include unrelated changes.

Reporting Bugs

If you encounter a bug, please submit an issue in the issue tracker and include:

  • Steps to reproduce the bug.
  • Expected and actual results.
  • Any additional information, such as screenshots or error logs.

Feature Requests

Feel free to open a new issue in the issue tracker for feature requests. Make sure to provide as much context as possible to help us understand the need for the new feature.


Thank you for your contributions! 🎉