{"id":22492610,"url":"https://github.com/garystafford/nasa-api-module","last_synced_at":"2025-03-27T20:33:38.693Z","repository":{"id":74258761,"uuid":"116425303","full_name":"garystafford/nasa-api-module","owner":"garystafford","description":"Node.js Module to access NASA's public APIs.","archived":false,"fork":false,"pushed_at":"2018-01-18T02:45:11.000Z","size":53,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2023-08-05T02:22:55.720Z","etag":null,"topics":["api","api-gateway","aws","lambda","nodejs","parameter-store","serverless"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/garystafford.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-01-05T20:46:59.000Z","updated_at":"2019-03-16T20:01:31.000Z","dependencies_parsed_at":null,"dependency_job_id":"630d6af0-aa55-4cda-8f54-00574949c87d","html_url":"https://github.com/garystafford/nasa-api-module","commit_stats":null,"previous_names":[],"tags_count":12,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/garystafford%2Fnasa-api-module","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/garystafford%2Fnasa-api-module/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/garystafford%2Fnasa-api-module/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/garystafford%2Fnasa-api-module/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/garystafford","download_url":"https://codeload.github.com/garystafford/nasa-api-module/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":236730814,"owners_count":19195684,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","api-gateway","aws","lambda","nodejs","parameter-store","serverless"],"created_at":"2024-12-06T18:19:37.183Z","updated_at":"2025-02-01T22:48:39.202Z","avatar_url":"https://github.com/garystafford.png","language":"JavaScript","readme":"# NASA API Request Module\n\nNode.js Module to access NASA's public APIs.\n\nRequires your own personal [NASA API Key](https://api.nasa.gov/index.html#apply-for-an-api-key).\n\n## Usage\n\nAdd to `package.json`\n\nTo install module from your private npm repository\n\n```bash\nnpm install nasa-api-module\n```\n\n```text\n{\n  \"dependencies\": {\n    \"nasa-api-module\": \"^1.0.19\"\n  }\n}\n```\n\nTo install module from the existing GitHub project\n\n```text\n{\n  \"dependencies\": {\n    \"nasa-api-module\": \"github:garystafford/nasa-api-module#semver:1.0.19\"\n  }\n}\n```\n\nAdd to JavaScript file\n\n```javascript\nconst nasa = require('nasa-api-module');\n\nreturn new Promise((resolve, reject) =\u003e {\n    nasa.getAstronomyPicOfDay((err, body) =\u003e {\n        if (err) {\n            return reject(err)\n        }\n\n        return resolve(body)\n    })\n})\n```\n\n## Publish Module to Nexus\n\nUpdate `package.json`\n\n```json\n{\n  \"version\": \"1.0.19\"\n}\n```\n\n```bash\n# commit changes\ngit add -A \u0026\u0026 git commit -m \"Updating release version\" \u0026\u0026 git push\n\n# tag\ngit tag -a 1.0.19 -m \"1.0.19\"\ngit push --tags\n\n# publish\nnpm login --registry=http://localhost:8081/repository/npm-group\nnpm publish # my registry is hard-coded in package.json\n```\n\n## AWS Parameter Store\n\nModules uses `cacheClient.js` from [theburningmonk/lambda-config-demo](https://github.com/theburningmonk/lambda-config-demo) GitHub repo, to access my personal NASA API Key from my AWS [Parameter Store](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-paramstore.html). My AWS Region is currently hard-coded in `cacheClient.js`, to hack around the following error: `ConfigError: Missing region in config AWS`.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgarystafford%2Fnasa-api-module","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgarystafford%2Fnasa-api-module","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgarystafford%2Fnasa-api-module/lists"}