binect-chrome/.claude/rules/stack-and-commands.md

30 lines
822 B
Markdown
Raw Normal View History

## Stack
- **Language:** TypeScript (Chrome Extension, Manifest V3)
- **Key deps:** `@binect/js` (local `file:../binect-js` SDK — sibling repo must be present to build); Web Crypto API (AES-GCM credentials); Chrome APIs (`downloads`, `storage`, `alarms`, `activeTab`)
- **Build/test tooling:** Webpack, Jest, ESLint, `tsc` (type-check only)
## Dev Commands
```bash
# Install dependencies
npm install
# Build (production bundle → dist/)
npm run build
# Watch build for development
npm run dev
# Run tests
npm test # jest
npm run test:watch # jest --watch
# Lint / type check
npm run lint # eslint src/**/*.{js,ts}
npm run lint:fix # eslint --fix
npm run type-check # tsc --noEmit
```
Load the unpacked extension from `dist/` via `chrome://extensions` (Developer mode) to test in-browser.