Files
Outpost/CONTRIBUTING.md
T
Puranjay Savar Mattas c04e4d542c legal: relicense from MIT to Business Source License 1.1
Switches from a fully permissive license to BSL 1.1 (the same family
Outline's own server uses, for the same underlying reason): personal
use, self-hosting, and non-commercial forks stay explicitly allowed,
but shipping a competing hosted/distributed product off this code, or
distributing a fork under branding that claims official/affiliated
status, now requires a separate commercial agreement. Converts
automatically to Apache License 2.0 on the change date in LICENSE.

Adds an explicit trademark notice for the "Outpost" name/logo,
independent of the code license — the specific thing this was meant to
close off (a fork getting relabeled as an official/endorsed product).

README gets a plain-English summary of what changed; CONTRIBUTING gets
a one-line note that PRs are contributed under the same terms.
2026-08-20 00:28:32 +01:00

2.3 KiB

Contributing to Outpost

Thank you for contributing. Please read this guide before opening issues or PRs.

Outpost is early alpha (0.0.x) — expect the codebase and conventions here to shift as Phase 1 (see docs/ARCHITECTURE.md) settles. If something in this guide is stale, flag it.


Branching

Branch from main using type/short-description:

git checkout -b feature/document-permissions
git checkout -b fix/sidebar-context-menu

Commit Messages

Follow the Conventional Commits standard: type(scope): message.

Type Description
feat New feature
fix Bug fix
docs Documentation
style Formatting
refactor Refactor
perf Performance
test Tests
build Build system
ci CI/CD config
chore Maintenance

Examples:

  • feat(collections): add document right-click context menu
  • fix(reader): correct off-main AppKit calls in save action

Pull Requests

  • Link the related issue in your PR description, if any
  • Keep PRs focused — one feature or fix per PR
  • Self-review before requesting review
  • Run the tests that apply to what you touched (see below) and confirm the app still launches and behaves correctly in Xcode

Testing

  • OutlineKit (the REST client package) has real unit test coverage:
    cd OutlineKit && swift test
    
  • The Outpost app target has no meaningful CLI build path — xcodebuild from the command line is not a reliable way to verify it in this project's current setup. Build and run through Xcode, and manually verify the feature you changed (and anything obviously adjacent) before opening a PR.

Labels

Issues and PRs use two label prefixes:

  • type: — what kind of change/issue this is (type: bug, type: docs, type: security, ...)
  • priority: — how urgent it is (used mainly for security reports)

Questions

Open an issue — this is a single-repo project, there's no separate issue tracker to route to.


License

Outpost is licensed under the Business Source License 1.1, not a traditional OSI open-source license — see the README's License section for what that means in practice. By submitting a PR, you agree your contribution is licensed under the same terms as the rest of the project.