mirror of
https://github.com/acamarata/qibla.git
synced 2026-06-30 19:04:28 +00:00
chore: untrack AGENTS.md (AI working memory, not source code)
This commit is contained in:
parent
2236cc0b2d
commit
72ffd3659b
1 changed files with 0 additions and 57 deletions
|
|
@ -1,57 +0,0 @@
|
|||
# qibla — PRI (Per-Repo Instructions)
|
||||
|
||||
**Cascade:** GCI → ASI → PPI (`/Volumes/X9/Sites/acamarata/.claude/CLAUDE.md`) → **PRI (this file)**
|
||||
|
||||
## Repo Overview
|
||||
|
||||
**Package:** `@acamarata/qibla@1.0.0`
|
||||
**Registry:** npm (public, `access: public`)
|
||||
**Scoped name:** `@acamarata/qibla` — note the `@acamarata/` scope prefix in all install/publish commands
|
||||
**Language:** TypeScript
|
||||
**Runtime deps:** zero — pure math, no external dependencies
|
||||
**Build:** tsup, dual CJS (`index.cjs`) + ESM (`index.mjs`) output
|
||||
**Dart counterpart:** `qibla@1.0.0` on pub.dev (publisher: ariccamarata.com), repo: `qibla-dart`
|
||||
|
||||
## What It Does
|
||||
|
||||
Qibla direction, great-circle path, and haversine distance toward the Ka'bah (Mecca).
|
||||
|
||||
Exported functions:
|
||||
- `qiblaAngle(lat, lng)` — initial bearing to Ka'bah, clockwise from north (0-360)
|
||||
- `compassDir(bearing)` — 8-point compass abbreviation (N, NE, E, SE, S, SW, W, NW)
|
||||
- `compassName(bearing)` — full compass name (North, Northeast, etc.)
|
||||
- `qiblaGreatCircle(lat, lng, steps?)` — Slerp waypoints along the great-circle path to Ka'bah
|
||||
- `distanceKm(lat1, lng1, lat2, lng2)` — haversine distance in km
|
||||
|
||||
Exported constants:
|
||||
- `KAABA_LAT = 21.422511`
|
||||
- `KAABA_LNG = 39.826150`
|
||||
- `EARTH_RADIUS_KM = 6371`
|
||||
|
||||
## Project Rules (inherits from acamarata PPI)
|
||||
|
||||
This repo follows the full acamarata npm package standard. Key points:
|
||||
|
||||
- pnpm only — `pnpm install`, `pnpm test`, `pnpm run build`
|
||||
- No AI attribution anywhere in tracked files
|
||||
- Writing quality: no em dashes as connectors, no AI tells, academic technical tone
|
||||
- Publishing requires explicit user approval
|
||||
- Version bumps require CHANGELOG.md update first
|
||||
|
||||
## Dart Counterpart Relationship
|
||||
|
||||
The JS and Dart packages implement the same algorithm. Keep them in sync on:
|
||||
- Ka'bah coordinate constants (KAABA_LAT / KAABA_LNG)
|
||||
- Algorithm correctness (forward azimuth formula, haversine, Slerp)
|
||||
- API surface parity (functions and constants match across both)
|
||||
|
||||
When updating the JS package in a way that affects algorithm or constants, note whether the Dart package (`qibla-dart`) needs the same fix.
|
||||
|
||||
## npm Publish Command
|
||||
|
||||
```bash
|
||||
npm publish --access public
|
||||
```
|
||||
|
||||
The `@acamarata/` scope requires `--access public` on first publish. Already set in `publishConfig` but include it explicitly to avoid accidental private publish.
|
||||
|
||||
Loading…
Reference in a new issue