Skip to main content

Contributing to Wellpipe

We welcome contributions to Wellpipe! This guide covers how to get started.

Ways to Contribute

Code Contributions

  • Bug fixes
  • New features
  • New provider integrations
  • Performance improvements

Documentation

  • Fix typos or unclear explanations
  • Add examples
  • Improve API documentation

Community

  • Answer questions in issues
  • Review pull requests
  • Share feedback

Getting Started

1. Fork the Repository

Fork the repository you want to contribute to on GitHub.

2. Clone Your Fork

git clone https://github.com/YOUR_USERNAME/core.git
cd core

3. Create a Branch

git checkout -b feature/my-new-feature

Use descriptive branch names:

  • feature/add-oura-provider
  • fix/token-refresh-error
  • docs/improve-api-reference

4. Make Changes

Follow our code style guide and commit message conventions.

5. Test Your Changes

npm test
npm run typecheck
npm run lint

6. Submit a Pull Request

Push your branch and create a PR on GitHub.

Repository Guide

RepositoryPurposeAccept PRs?
coreShared interfaces and typesYes
provider-whoopWHOOP integrationYes
cliCommand-line interfaceYes
docsDocumentationYes
cloudSaaS backendNo (private)

What Makes a Good PR

Clear Description

  • Explain what the change does
  • Link to related issues
  • Include screenshots for UI changes

Focused Scope

  • One logical change per PR
  • Avoid mixing refactors with new features
  • Keep changes small and reviewable

Tests

  • Add tests for new functionality
  • Update tests for changed behavior
  • Maintain or improve coverage

Documentation

  • Update relevant documentation
  • Add JSDoc for new public APIs
  • Include usage examples

Review Process

  1. Automated checks - Tests, linting, type checking
  2. Maintainer review - Code quality and design
  3. Feedback - We may request changes
  4. Approval - Once approved, we'll merge

Typical review time: 1-3 days

Code of Conduct

Be respectful and constructive. We're all here to build something useful.

Questions?

  • Open an issue for questions
  • Tag with question label
  • We'll respond within a few days

Next Steps