moon-cycle/package.json
Aric Camarata 9b9abb99c8 refactor: code quality improvements across the board
- Add input validation (TypeError) to cycleMonth and cycleYear
- Convert tests to node:test runner with describe/it structure
- Add ESLint + Prettier with lint, format, and format:check scripts
- Update CI workflow with lint job, frozen-lockfile, and pack-check
- Add noImplicitReturns, noFallthroughCasesInSwitch, skipLibCheck to tsconfig
- Add invalid Date tests for both ESM and CJS suites
2026-03-08 11:32:47 -04:00

77 lines
1.9 KiB
JSON

{
"name": "moon-cycle",
"version": "2.0.0",
"description": "Maps any date to NASA moon phase imagery via synodic and calendar-year cycles. Lightweight npm package — images served via CDN or self-hosted from the GitHub repository.",
"author": "Aric Camarata",
"license": "MIT",
"main": "./dist/index.cjs",
"module": "./dist/index.mjs",
"types": "./dist/index.d.ts",
"exports": {
".": {
"import": {
"types": "./dist/index.d.mts",
"default": "./dist/index.mjs"
},
"require": {
"types": "./dist/index.d.ts",
"default": "./dist/index.cjs"
}
}
},
"files": [
"dist/",
"README.md",
"LICENSE",
"CHANGELOG.md"
],
"sideEffects": false,
"scripts": {
"build": "tsup",
"typecheck": "tsc --noEmit",
"lint": "eslint src/",
"format": "prettier --write src/ test.mjs test-cjs.cjs eslint.config.mjs tsup.config.ts",
"format:check": "prettier --check src/ test.mjs test-cjs.cjs eslint.config.mjs tsup.config.ts",
"pretest": "tsup",
"test": "node --test test.mjs && node --test test-cjs.cjs",
"prepublishOnly": "tsup"
},
"engines": {
"node": ">=20"
},
"keywords": [
"moon",
"lunar",
"phase",
"cycle",
"nasa",
"synodic",
"images",
"webp",
"astronomy",
"calendar",
"islamic"
],
"repository": {
"type": "git",
"url": "git+https://github.com/acamarata/moon-cycle.git"
},
"homepage": "https://github.com/acamarata/moon-cycle#readme",
"bugs": {
"url": "https://github.com/acamarata/moon-cycle/issues"
},
"publishConfig": {
"access": "public",
"registry": "https://registry.npmjs.org/"
},
"devDependencies": {
"@eslint/js": "^10.0.1",
"@types/node": "^22.0.0",
"eslint": "^10.0.3",
"eslint-config-prettier": "^10.1.8",
"prettier": "^3.8.1",
"tsup": "^8.0.0",
"typescript": "^5.0.0",
"typescript-eslint": "^8.56.1"
}
}