Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
56 changes: 56 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
name: Bug report
description: Something broke in Parcel
title: "[Bug]: "
labels: [bug]
body:
- type: markdown
attributes:
value: |
Thanks for reporting. Include macOS version and whether Screen Recording was granted **after** install (quit + reopen required).
- type: textarea
id: what
attributes:
label: What happened?
description: Steps to reproduce, if known.
validations:
required: true
- type: textarea
id: expected
attributes:
label: What did you expect?
validations:
required: true
- type: dropdown
id: area
attributes:
label: Area
options:
- Capture / Overlay
- Editor / Annotations
- Recording
- Vision / OCR
- Upload
- Preferences / Hotkeys
- Updates / Onboarding
- Other
validations:
required: true
- type: input
id: macos
attributes:
label: macOS version
placeholder: e.g. macOS 26.0
validations:
required: true
- type: input
id: build
attributes:
label: Parcel build
placeholder: Debug from source / Release zip / Homebrew
- type: checkboxes
id: permission
attributes:
label: Screen Recording
options:
- label: Granted in System Settings, and I quit/reopened Parcel after granting
required: false
8 changes: 8 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
blank_issues_enabled: false
contact_links:
- name: Website
url: https://parcel-zeta-silk.vercel.app
about: Marketing site, download, and guides
- name: Parable ecosystem
url: https://github.com/bswxyz/parable
about: UI components and templates from the same author
32 changes: 32 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: Feature request
description: Suggest an improvement to Parcel
title: "[Feature]: "
labels: [enhancement]
body:
- type: markdown
attributes:
value: |
Describe the problem and proposed solution. Parcel stays **local-first** — features that require network AI will not be accepted.
- type: textarea
id: problem
attributes:
label: Problem or use case
description: Who is this for and when does it come up?
validations:
required: true
- type: textarea
id: proposal
attributes:
label: Proposed solution
description: How should it work in the Editor, Overlay, or menu bar?
validations:
required: true
- type: checkboxes
id: constraints
attributes:
label: Constraints acknowledged
options:
- label: Stays on-device (no network AI / LLM)
required: true
- label: Uses canonical glossary (Capture, Annotation, Tool, …)
required: false
29 changes: 29 additions & 0 deletions .github/assets/capture-flow.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
43 changes: 43 additions & 0 deletions .github/assets/hero.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
22 changes: 22 additions & 0 deletions .github/assets/toolkit.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
29 changes: 29 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
## Summary

<!-- What changed and why (1–3 sentences). -->

## Type

- [ ] Bug fix
- [ ] Feature
- [ ] Docs / website
- [ ] Refactor
- [ ] Release / CI

## Test plan

<!-- How did you verify this? Link QA checklist items if relevant. -->

- [ ] Built Debug locally (`xcodegen generate` + `xcodebuild`)
- [ ] Ran relevant items from [docs/QA_CHECKLIST.md](docs/QA_CHECKLIST.md)
- [ ] Website builds (`cd Website && npm run build`) — if Website/ changed

## Constraints

- [ ] No network AI / LLM calls added
- [ ] Glossary terms preserved (Capture, Selection, Overlay, Editor, Annotation, Tool, Canvas, Layer)
- [ ] Render pipeline unchanged or intentionally updated with docs

## Screenshots / recordings

<!-- Capture UI changes help reviewers — drag video or images here. -->
41 changes: 41 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
name: Build

on:
push:
branches: [main, master]
pull_request:

jobs:
build:
runs-on: macos-15
steps:
- uses: actions/checkout@v4

- name: Install XcodeGen
run: brew install xcodegen

- name: Generate project
run: xcodegen generate

- name: Resolve packages
run: xcodebuild -resolvePackageDependencies -project Parcel.xcodeproj -scheme Parcel

- name: Build Debug
run: |
xcodebuild -project Parcel.xcodeproj -scheme Parcel -configuration Debug \
-derivedDataPath .derivedData build \
CODE_SIGN_IDENTITY="-" CODE_SIGNING_ALLOWED=YES

build-website:
runs-on: ubuntu-latest
defaults:
run:
working-directory: Website
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: "22"
cache: npm
cache-dependency-path: Website/package-lock.json
- run: npm ci && npm run build
42 changes: 42 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
name: Release

on:
push:
tags:
- "v*"

jobs:
release:
runs-on: macos-15
steps:
- uses: actions/checkout@v4

- name: Install XcodeGen
run: brew install xcodegen

- name: Build, export, notarize
env:
DEVELOPMENT_TEAM: ${{ secrets.DEVELOPMENT_TEAM }}
APPLE_ID: ${{ secrets.APPLE_ID }}
APPLE_APP_PASSWORD: ${{ secrets.APPLE_APP_PASSWORD }}
run: |
chmod +x Scripts/release.sh
./Scripts/release.sh

- name: Create GitHub Release
uses: softprops/action-gh-release@v2
with:
files: build/Parcel.zip
generate_release_notes: true

- name: Build website
working-directory: Website
run: |
npm ci
npm run build

- name: Upload website artifact
uses: actions/upload-artifact@v4
with:
name: website-dist
path: Website/out
5 changes: 4 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ xcuserdata/

## XcodeGen — the project is generated from project.yml.
## Regenerate locally with `xcodegen generate`.
Notable.xcodeproj/
Parcel.xcodeproj/

## Swift Package Manager
.build/
Expand All @@ -30,3 +30,6 @@ Package.resolved

## Misc
*.log
.derivedData-release/
.vercel-deploy*.json
.cursor/
Loading
Loading