Skip to content
This page is a stub. You can help by expanding it.

πŸ‘¨β€πŸ’» Developing

This document describes how to contribute code to the project. If you are not technical, there are many other ways to contribute!

The main relevant files you can inspect are package.json, rollup.config.js and release.yml.

Node

package.json
  • We use pnpm.
  • We’ve got your usual dev and build scripts.
    • They use rollup for bundling.

Rollup

rollup.config.js
  • Our test vault will be located at the directory root, at ./obsidian-fountain-editor-test β€” initialize your own Obsidian vault!
    • Running pnpm run dev will continually generate the plugin binaries at ./obsidian-fountain-editor-test/.obsidian/plugins/fountain-editor
  • CSS is also compiled and preprocessed with postcss.
  • pnpm run build creates files at the ./build directory.

GitHub Actions

release.yml
  • On creating new tags:
    • Checkout repo
    • Install node
      • Install pnpm
        • Try to use pnpm cache
      • Install packages
    • Build binaries
    • Create GitHub Release
    • Zip then upload build outputs
    • Upload binaries directly

Lazy branching strategy, I push to main for now, but do open Merge Requests.

OH and do leave a comment on the GitHub Issue or in one of the Discussion threads if you’re going to work on a ticket, so that I know to not start on it as well, and we would end up doing duplicate work.

Feel free to contact me any time!