{ "type": "module", "name": "solar-spa", "version": "2.0.2", "description": "NREL Solar Position Algorithm (SPA) compiled to WebAssembly. High-performance solar position, sunrise, sunset, and solar noon calculations.", "author": "Aric Camarata", "license": "MIT", "main": "./dist/index.cjs", "module": "./dist/index.mjs", "types": "./dist/index.d.ts", "exports": { ".": { "types": "./dist/index.d.ts", "import": "./dist/index.mjs", "require": "./dist/index.cjs" }, "./package.json": "./package.json" }, "sideEffects": false, "files": [ "dist/index.cjs", "dist/index.mjs", "dist/index.d.ts", "dist/index.d.mts", "wasm/", "README.md", "CHANGELOG.md", "LICENSE" ], "scripts": { "build:wasm": "emcc src/spa.c src/spa_wrapper.c -O3 -flto --no-entry -sMODULARIZE=1 -sEXPORT_NAME=createSpaModule -sSINGLE_FILE=1 -sEXPORTED_FUNCTIONS='[\"_spa_calculate_wrapper\",\"_spa_free_result\",\"_malloc\",\"_free\"]' -sEXPORTED_RUNTIME_METHODS='[\"cwrap\",\"getValue\"]' -sALLOW_MEMORY_GROWTH=0 -sINITIAL_MEMORY=1048576 -sSTACK_SIZE=65536 -sENVIRONMENT='node,web,worker' -sNO_FILESYSTEM=1 -sASSERTIONS=0 -sDISABLE_EXCEPTION_CATCHING=1 -sWASM_BIGINT=0 -o wasm/spa-module.js", "build:ts": "tsup && cp dist/index.d.ts dist/index.d.mts", "build": "pnpm run build:wasm && pnpm run build:ts", "typecheck": "tsc --noEmit", "pretest": "pnpm run build:ts", "test": "node --test test.mjs && node --test test-cjs.cjs", "lint": "eslint src/", "format": "prettier --write src/", "format:check": "prettier --check src/", "validate": "node validate.mjs", "prepack": "pnpm run build:ts", "coverage": "c8 --reporter=lcov --reporter=text node test.mjs", "docs": "typedoc --out .github/wiki/api src/index.ts", "postbuild": "cp dist/index.d.ts dist/index.d.mts" }, "keywords": [ "solar", "spa", "nrel", "wasm", "webassembly", "sunrise", "sunset", "solar-noon", "zenith", "azimuth", "solar-position", "astronomy" ], "repository": { "type": "git", "url": "git+https://github.com/acamarata/solar-spa.git" }, "homepage": "https://github.com/acamarata/solar-spa#readme", "bugs": { "url": "https://github.com/acamarata/solar-spa/issues" }, "engines": { "node": ">=20" }, "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org/" }, "devDependencies": { "@acamarata/eslint-config": "^0.1.0", "@acamarata/prettier-config": "^0.1.0", "@acamarata/tsconfig": "^0.1.0", "@eslint/js": "^10.0.1", "@types/node": "^25.3.0", "@typescript-eslint/eslint-plugin": "^8.56.1", "@typescript-eslint/parser": "^8.56.1", "c8": "^10.1.3", "eslint": "^10.0.3", "eslint-config-prettier": "^10.1.8", "prettier": "^3.8.1", "tsup": "^8.5.1", "typedoc": "^0.28.19", "typedoc-plugin-markdown": "^4.11.0", "typescript": "^5.9.3", "typescript-eslint": "^8.56.1" }, "packageManager": "pnpm@10.11.1", "prettier": "@acamarata/prettier-config" }