Skip to content

Latest commit

 

History

History
53 lines (32 loc) · 1.68 KB

File metadata and controls

53 lines (32 loc) · 1.68 KB

Contributing

This guide provides instructions for contributing to this Capacitor plugin.

Developing

Local Setup

  1. Fork and clone the repo.

  2. Install the dependencies.

    npm install
  3. Install SwiftLint if you're on macOS.

    brew install swiftlint

Scripts

npm run build

Build the plugin web assets and generate plugin API documentation using @capacitor/docgen.

It will compile the TypeScript code from src/ into ESM JavaScript in dist/esm/. These files are used in apps with bundlers when your plugin is imported.

Then, Rollup will bundle the code into a single file at dist/plugin.js. This file is used in apps without bundlers by including it as a script in index.html.

npm run verify

Build and validate the web and native projects.

This is useful to run in CI to verify that the plugin builds for all platforms.

npm run lint / npm run fmt

Check formatting and code quality, autoformat/autofix if possible.

This repository is integrated with ESLint, Prettier, and SwiftLint; run the formatting scripts before opening a pull request so the codebase keeps a consistent style.

Publishing

Releases are automated; do not run npm publish manually.

  • Pushing to development or next triggers the Release Plugin workflow, which runs semantic-release (version, changelog, GitHub release, npm publish to the dev/next channel).
  • Releasing latest from main is a manual dispatch of the same workflow; the Maven Central and CocoaPods publish jobs only run on main.
  • Commit messages follow Conventional Commits; they drive the version bump.