Link Search Menu Expand Document

Development

Summary

If you would like to contribute to the development of dendron, checkout out the repo from github.

You can then follow the setup instructions.

  • NOTE: the above setup instructions are for the dendron plugin. See the below links if you are working on a different part of Dendron:

A great place to start is with issues labelled with the size.small label on github. These are items that we picked out specifically for first time contributors and are small self contained task that are well suited for first time contributors.

Leave a comment in the issue if you decide to work on it. Issues that are being worked on will have the status.wip label.

Remember that you are always welcome to ask for help inside the #dev discord channel.

Development

Workspace Upgrade

We recently ( 2021.02.13 ) upgraded Dendron's backend to use Yarn Workspaces.

This comes with a bunch of performance and size improvements when developing Dendron.

If you currently have Dendron checked out, you'll need to run the following commands to migrate over to using the yarn build method.

# get latest version
git pull

npm install -g yarn
# remove old node_modules
./bootstrap/scripts/cleanup.sh
yarn bootstrap:bootstrap
yarn bootstrap:build 


dendron.contribute

dendron.contribute.first-dev

VSCode Extension Development

If you're not familiar with VSCode Extension Development, have no fear. There are lots of great resources for that.

The VSCode guide to making your first extension is a great place to start.

Afterwards, you can see how specific features are implemented through the vscode extension samples library.

Pull Request Checklist

  • add a test for the new feature
  • make sure all the existing tests pass
  • if its your first pull request to Dendron, watch out for the CLA bot that will ask you to agree to Dendron's CLA
  • if its your first pull request and you're on our Discord, make sure that Kevin gives you the horticulturalist role πŸ‘¨β€πŸŒΎπŸ‘©β€πŸŒΎ

Commit Style

  • we follow conventional commits with the following tags
  • categories:
    • feat: feature - introduce new functionality
    • enhance: enhancement - improve existing functionality
    • fix: make something not broken
    • chore: backend improvements
    • spike: not complete commit

dendron.contribute

dendron.contribute.first-dev