UsefulKey
Additional info

Contributing

How to contribute adapters, plugins, and improvements to UsefulKey.

Overview

Thank you for contributing to UsefulKey. This guide explains how to propose changes, add adapters, and ensure quality through tests and docs.

Getting started

  • Fork and clone the repository.
  • Install dependencies with pnpm install.
  • Build and test with turbo build and pnpm test.

Code style

  • Follow the existing project formatting and naming conventions.
  • Prefer explicit, descriptive names for functions and classes.
  • Keep functions small and focused; handle edge cases up front.

Adapters and plugins

  • Keep methods deterministic and fast; avoid internal retries.
  • Preserve return shapes exactly; the core relies on them.
  • Use milliseconds for all time values.
  • Ensure atomicity where required (transactions/Lua as needed).
  • Include a minimal example in documentation illustrating usage.

Tests

  • Add unit tests that cover success, failure, and edge cases.
  • Organize tests by feature area (adapters, core, plugins, utils).

Documentation

  • Update or add docs in web/docs/content/docs/.
  • For new adapters/plugins, include interface coverage and a basic example.

Submitting changes

  • Open a pull request with a clear description of the change and rationale.
  • Link related issues if applicable.
  • Ensure CI is green.

Questions

If you have questions or need guidance, open a discussion or issue.