Skip to content

Latest commit

 

History

History
86 lines (54 loc) · 3.52 KB

CONTRIBUTING.md

File metadata and controls

86 lines (54 loc) · 3.52 KB

Contributing to Rubberduck

First of all, thank you for taking some of your time to contribute to the project. You're awesome 🦆👍

Table of Contents

Get started

Pre-requisite: you have installed git, node and pnpm.

  1. Clone the repo: git clone [email protected]:rubberduck-ai/rubberduck-vscode.git
  2. Go into the cloned repository: cd rubberduck-vscode
  3. Install dependencies: pnpm install
  4. Build the extension: pnpm build-all

The project uses TypeScript, Vitest for the tests and Prettier for the formatting.

Run the tests

You can run tests with pnpm test

To run them in watch mode, use: pnpm test-watch.

Run it locally

You can use VS Code's built-in debugger on the project to try out your local extension.

To build the project, press F5. It should run the run - app/vscode task.

This will:

  1. Build the project
  2. Open a new "Extension Development Host" VS Code window, with your local code overriding your "Rubberduck" extension

It's handy to test your changes in integration with VS Code API.

Useful resources to start changing the code

Code Style

Style formatting is managed by Prettier. It runs as a pre-commit hook, so you shouldn't have to worry about it 👐

Open a PR and add acknowledge your contribution

You can open a Pull-Request at any time. It can even be a draft if you need to ask for guidance and help. Actually, we'd be pretty happy to assist you going in the best direction!

Once everything is ready, open a Pull-Request (if it's not already done) and ask for a review. We'll do our best to review it asap.

Finally, use all-contributors bot command to add yourself to the list of contributors. It's very easy to do, you basically need to mention the bot in a comment of your PR.

Whether it's code, design, typo or documentation, every contribution is welcomed! So again, thank you very, very much 🦆

More documentation

  • You can find a brief introduction to the architecture of this extension here.

  • You can find more info about adding AI Chat templates here.

Other Commands

  • Lint: pnpm nx lint --skip-nx-cache
  • Package: pnpm nx run vscode:package