Redcast Docs
REDCAST HANDBOOK

Build and contribute

The application architecture, local verification and the handbook source.

Read Markdown ↗

Redcast is native SwiftUI and AppKit, built in Swift 6 with complete strict concurrency. It supports macOS 26 and later. The app has no third-party package dependencies; the documentation website has its own Node dependencies.

Build the app

Use Xcode 26 and the committed project:

xcodebuild -project Tinycast.xcodeproj -scheme Tinycast \
  -configuration Debug CODE_SIGNING_ALLOWED=NO build

If xcode-select points at Command Line Tools, use the full Xcode path:

DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer \
  xcodebuild -project Tinycast.xcodeproj -scheme Tinycast \
  -configuration Debug CODE_SIGNING_ALLOWED=NO build

For a signed installed Redcast build, use the fork installer. Debug builds are a separate channel; Xcode project and source names deliberately remain Tinycast.

Read before changing code

DocumentCovers
AGENTS.mdRepository rules and the short map
ArchitectureOwnership, feature boundaries and windows
StandardsSwift style, concurrency, naming and localization
DevelopmentToolchain, signing, generators and editor setup
TestingStandalone harnesses and manual checks
Feature internalsInvariants and implementation details per feature
Fork toolingInstallation, rebranding and upstream sync

AppCore owns long-lived state. Views reach feature coordinators through the environment. Model files stay free of AppKit and SwiftUI. Heavy work leaves the main actor; short UI operations stay synchronous.

Project generation and tests

project.yml owns the Xcode project. After editing it, run xcodegen generate and keep both files in the change. Generated emoji, currency, country and Raycast-runtime files must be regenerated by their scripts instead of hand-edited.

./Scripts/run-tests.sh
./Scripts/lint.sh

The harnesses compile shipped Swift sources. A clean Debug build, the pure-model import check and accurate docs are also part of completion. Read testing.md for specific harness requirements and the manual sweep.

Contribute

Read CONTRIBUTING.md, describe the user-visible problem and keep unrelated changes separate. File bugs and feature requests against the fork when they concern Redcast additions.

This documentation site

The handbook source is docs-site/ in the separate redcast-site website repository. It uses the same engine as upstream: Fumadocs, Next.js static export and Tailwind. Markdown files are in docs-site/content/docs/; each section's meta.json controls navigation.

cd docs-site
npm ci
npm run dev
npm run build
npm run check

The build exports HTML, a local search index, a sitemap, raw Markdown per page, llms.txt and llms-full.txt. No server-side model or search service is needed. Production combines this export with the existing English and Russian landing pages and deploys the complete static bundle through Wrangler.

See the downloadable documentation source for publishing, checks and attribution. The handbook describes user workflows; the repository's docs/features/ remains the detailed engineering reference.

Redcast is a fork of Tinycast by Abue Ammar. Shared guides are adapted under AGPL-3.0-or-later. Documentation source · App source · Report an issue

On this page