contributing

Open contributions — from humans.

Block loads into other people’s processes. A bad patch crashes a viewer mid-session. Own the diff, test it, and keep PRs focused.

Ground rules

  1. Human authorship. No Copilot / ChatGPT / Claude / Cursor Agent / Gemini paste-jobs — disclosed or not. See AI policy.
  2. Honest compatibility. Only claim a viewer you launched with your build.
  3. Licence. Code lands under BSD-2-Clause. Update notices when you vendor upstream.
  4. Focused PRs. One concern when possible. No drive-by dependency dumps.
  5. Brand. Lime signal #D4FF3F, lockups in brand/ — do not invent a second look.

Ways to help

AreaExamples
BugsOverlay crash, Setup mis-detect — with log text
OpenGL / viewersFirestorm, Alchemy, Black Dragon — presets, Shift+B UX
SetupViewer discovery, portable browse, OTA copy
Vulkan / LinuxLayer hardening; Meson builds on CI
Docs & siteVIEWERS / PLATFORMS accuracy, Pages content
ReviewSay what you built and ran

Feature ideas: new issue form. Search first.

Build (Windows)

Prerequisites: Git, Visual Studio 2022 Build Tools (MSVC) for the OpenGL injector.

git clone https://github.com/ape-squared/Block.git
cd Block
powershell -ExecutionPolicy Bypass -File tools\build_reshade_block.ps1
powershell -ExecutionPolicy Bypass -File tools\stage_block_runtime.ps1
powershell -ExecutionPolicy Bypass -File tools\build_block_setup.ps1
tools\BlockSetup.exe

Before you open a PR

What GitHub checks on every PR

A green CI check does not replace “I ran Shift+B on my viewer.” False-positive AI heuristics: explain in the PR and ask a maintainer.

Issues

Use New issue — bug form or feature request. Public attachments are public; strip tokens from logs.