NIGHTSHAPE

Christopher “Kit” Yarber — iOS Engineer

iOS Swift / Real-Time Audio / App Store Release

01 /

Operator

NameChristopher “Kit” Yarber
RoleiOS Engineer — Independent
LocationHudson, FL, United States — Remote
Contactcontact@kityarber.com
Seller of RecordChristopher Yarber / Apple App Store
02 /

Shipped Units

Both written solo
Unit A

NIGHTSHAPES by NIGHTSHAPE

Live — App Store

40Days to store
206Commits
5.0Rating
Store ID
6785360072
Released
2026.07.28
Version
1.0.2
Min iOS
16.0
Category
Games / Puzzle
Price
Free / Ad-Supported

Build Log

  • SpriteKit match-3 engine. Board logic, match resolution, level progression, star ratings, persistent best scores. 36 Swift files.
  • Rewarded video through Google Mobile Ads, behind a Google UMP consent flow and App Tracking Transparency.
  • Game Center achievements and leaderboards through GameKit.
  • Player settings: reduced motion, haptics, split music and SFX levels.
  • Signed archives, submission and review. When ads began rendering as a black screen after launch, the 1.0.2 fix went out the same week.

Stack

SwiftSpriteKitUIKit GameKitStoreKitGoogle Mobile Ads Google UMPATTAVFoundation
Open App Store listing
Unit B

NIGHTSHAPE DRUMKIT

In Beta — TestFlight

12Months in development
74KLines of Swift
11Custom DSP units
Build
25
Started
2025.09
Min iOS
17.0
Class
Mobile DAW
Swift Files
152
Builds Shipped
25

Build Log

  • Real-time signal path built as in-process AudioUnits rather than stock effects. Stereo-linked peak-envelope compressor with hard-knee curve, attack and release ballistics, true bypass and truthful gain-reduction metering. Bit decimator, plate reverb, gate, chorus, five-band EQ, master safety limiter.
  • Reorderable FX rack. Five serial inserts per track that you drag into order, with reverb kept on a fixed send and return outside the insert lane. Chain order is saved per track and for the master bus.
  • Drum synthesizer with a full parameter system, factory and user preset stores, nested browser, and preset import and export.
  • Procedural groove generator. It works out what each row is for, picks a rhythmic archetype, lays down kick and snare, then writes hats and percussion that react to what those two did. Every step carries its own MIDI velocity.
  • Performance capture: arm, count in, then record taps live against a quantizer, with a prediction engine and ripple feedback on the pads.
  • Import pipeline that listens to a track and labels the drum hits in it (kick, snare, clap, tom, rim, closed and open hat) using decay time, spectral centroid, zero-crossing rate and low-band energy. The confidence score drops when two labels score close together or the transient is weak, so a bad guess reports itself as a bad guess.
  • Offline bounce on a dedicated manual-render graph isolated from the live engine, rendering an immutable project snapshot through production FX to PCM or AAC.
  • Sample-accurate transport driving an 8-lane arrangement timeline. Paint-to-place blocks, edge-drag looping, step, beat and bar snap, zoom, isolated undo stack.
  • Project files bundle any custom presets they depend on, so a project still renders correctly when it is opened on a different device.
  • Fixed a silent-output bug where the engine started before the Bluetooth route had settled. It only ever appeared on hardware.
  • XCTest coverage on transport timing, production-graph parity, FX signal path, limiter behavior and offline render output.

Stack

SwiftSwiftUIAVAudioEngine AudioToolboxAccelerate vDSPSPM CoreMotionCoreMLAudioUnit v3CryptoKit XCTestTestFlight
Open drumkit.nightshape.net
03 /

Requirement Match

Tendem mobile developer posting
RequirementEvidence
React Native, Flutter, Swift/SwiftUI or Kotlin Swift on both. SwiftUI for DRUMKIT, SpriteKit and UIKit for NIGHTSHAPES.
Mobile UI patterns, navigation, state, platform guidelines A multi-screen SwiftUI instrument with modal editors, timeline editing driven entirely by gestures, and observable view models holding the sequencer state.
Native device APIs Audio session and route handling, haptics, CoreMotion, document import from Files and iCloud, on-device persistence. I have not shipped camera, location or biometrics.
REST APIs, async data, local storage Codable project state and durable sample storage on device. A Cloudflare Worker with a KV store handles the DRUMKIT beta signups. This page runs on the same setup.
Build tools, code signing, store submission NIGHTSHAPES went through App Store review and a patch release. DRUMKIT has 25 signed TestFlight builds behind it. I do the archives and signing myself.
Debug, optimize, refactor for correctness and performance Lock-free rendering on the audio thread, a master limiter ahead of the output, and tests that fail if transport timing drifts before a build goes out.
In-app purchases, ads, subscriptions — plus Rewarded video with UMP consent and ATT, running in a live App Store app. StoreKit is wired in.
Firebase, Supabase or similar — plus Cloudflare Workers and KV, deployed to custom domains with certificates provisioned on deploy.
04 /

Operating Notes