My Projects
A selection of things I have built: open-source tools, full-stack platforms, and experiments that taught me something useful.
Islamic prayer time calculator using physics-based dynamic twilight angles rather than fixed degree offsets. Supports 14 traditional calculation methods (ISNA, MWL, Egypt, Karachi, and more) alongside fully configurable custom parameters. Published on npm.
Pure JavaScript implementation of the NREL Solar Position Algorithm. Computes solar zenith, azimuth, sunrise, sunset, and solar noon for any location and time to within ±0.0003 degrees — the same accuracy as the original C reference implementation. No native dependencies, runs in browsers and Node.
The NREL Solar Position Algorithm compiled to WebAssembly via Emscripten. Wraps the original C source in a JavaScript/TypeScript API that runs the algorithm at near-native speed in any modern environment — useful for high-frequency solar calculations in data pipelines.
Maps any JavaScript Date to the correct NASA moon phase image. Uses the full 29.53-day synodic cycle (708 discrete images) for daily precision, and an extended 8,760-image set for sub-hour accuracy. Works offline with bundled image references.
Crescent moon visibility calculations for Islamic calendar determination. Implements the major astronomical criteria (Odeh, Yallop, HMNAO) used by Islamic organizations worldwide to determine the start of Ramadan and other lunar months.
Zero-dependency Hijri calendar engine for JavaScript and TypeScript. Supports both Umm al-Qura (Saudi official) and FCNA/ISNA (North American calculated) calendars. Handles conversion, formatting, and month arithmetic without pulling in a full date library.
A suite of Hijri calendar plugins for the four most popular JavaScript date libraries. Each adapter adds Hijri locale, formatting, and conversion to its host library with no breaking changes. Published separately as date-fns-hijri, dayjs-hijri-plus, moment-hijri-plus, and temporal-hijri.
Multi-tenant CMS platform where a single Next.js deployment serves every Unity sub-brand on its own custom domain. Sixteen themes, a GraphQL content layer via Hasura, and an /admin panel for live content editing. Running in production across unity.charity, unity.cash, uny.eco, streamversity.com, and ariccamarata.com.
Open-source CLI that provisions a full production backend in one command on any Linux VPS: PostgreSQL 16, Hasura GraphQL, Hasura Auth, MinIO object storage, Redis, and nginx with Let's Encrypt SSL. Designed to eliminate dependency on managed cloud databases.
ClawDE
AI development environment built around a persistent Rust daemon and Flutter cross-platform apps. Maintains long-running context, tool access, and project state across sessions — closer to a background engineer than a chatbot.