diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..6b39878 --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,34 @@ +# AGENTS.md + +## Project Overview +This repository contains a [remoteStorage](https://remotestorage.io/) data module for managing saved places/POIs (Points of Interest). +It is written in TypeScript and compiled to a JavaScript module suitable for use with `remotestorage.js`. + +## Tech Stack +- **Language:** TypeScript (Target ES2020, ESNext modules) +- **Core Library:** `remotestoragejs` (Peer dependency) +- **Key Utilities:** + - `ulid` for generating unique IDs + - `latlon-geohash` for geohashing logic +- **Package Manager:** pnpm + +## Setup & Build +- **Install dependencies:** `pnpm install` +- **Build project:** `pnpm run build` + - Cleans `dist/` and runs the TypeScript compiler (`tsc`). + - Output files (`.js` and `.d.ts`) are generated in the `dist/` directory. + +## Code Style & Conventions +- **TypeScript:** Strict mode is enabled (`"strict": true`). +- **Module System:** ESNext modules with bundler resolution. +- **Project Structure:** + - `src/`: Contains all source code. `src/places.ts` is the main entry point. + - `dist/`: specific build artifacts. Do not edit files here directly. + +## Testing +- Currently, no automated test suite is configured. +- `pnpm test` will exit with an error. + +## Contribution Guidelines +- When adding new functionality, ensure proper types are exported in `src/types.d.ts` or within the module files. +- Follow existing patterns for defining remoteStorage data schemas and method signatures.