30 lines
822 B
Markdown
30 lines
822 B
Markdown
|
|
## 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.
|