{"id":21240802,"url":"https://github.com/mrtimofey/node-stories","last_synced_at":"2025-03-15T03:44:02.844Z","repository":{"id":38233641,"uuid":"142579620","full_name":"mrTimofey/node-stories","owner":"mrTimofey","description":"Node.js based REST API with users, their stories and quota management","archived":false,"fork":false,"pushed_at":"2024-01-09T17:59:45.000Z","size":1946,"stargazers_count":0,"open_issues_count":2,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-21T19:36:57.578Z","etag":null,"topics":[],"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/mrTimofey.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-07-27T13:18:55.000Z","updated_at":"2021-10-03T11:19:07.000Z","dependencies_parsed_at":"2025-01-21T19:35:10.865Z","dependency_job_id":"6a0de218-af76-4645-8d03-51817a64e43c","html_url":"https://github.com/mrTimofey/node-stories","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrTimofey%2Fnode-stories","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrTimofey%2Fnode-stories/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrTimofey%2Fnode-stories/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrTimofey%2Fnode-stories/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mrTimofey","download_url":"https://codeload.github.com/mrTimofey/node-stories/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243681003,"owners_count":20330155,"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":[],"created_at":"2024-11-21T00:53:30.034Z","updated_at":"2025-03-15T03:44:02.826Z","avatar_url":"https://github.com/mrTimofey.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Users and their stories\n\nNode.js based REST API with users, their stories and quota management.\n\nInvolved npm packages:\n* `nedb` as an embeddable database\n* `camo` - ODM for `nedb`\n* `indicative` - declarative validation library\n* `password-hash` - guess what\n* `polka` - lightweight express-like web server\n* `jest`, `axios` for API tests\n* `eslint` for code quality\n\n## Quick start\n\n```\nnpm i\nnpm start\n```\n\nFirst administrator user will be created automatically\nif you start the API server without any administrators created.\n\nInitial credentials: email `admin@admin.com`, password `secret`\n\n**It is strongly recommended to change these credentials ASAP.**\n\n## Prerequisites\n\nYou only need `node \u003e= 9.11.2` and `npm \u003e= 6.2.0` (may be less but not tested).\n\n## Commands\n\n* `npm test` - run tests\n* `npm start` - start API server on port 3000\n* `npm run wipe` - clean database\n\n## Configuration\n\nThe application can be configured with the following environment variables:\n* PORT - application port, default `3000`\n* DATA_FOLDER - NeDB database files relative to `process.env()`, default `data`.\n\nRun application with your configuration:\n```\nPORT=8000 DATA_FOLDER=test-data node index\n```\n\n## Project structure\n\n* \\_\\_tests\\_\\_ - tests folder\n* api - api server related sources\n\t* index.js - server initialization and routes\n\t* resource.js - Resource class which extends ODM with API resource logic\n\t* utils.js - useful server functions\n* data - NeDB database files default location\n* models - ODM models/API resources, blueprints for API routes\n* validators - custom validation rules, automatically exposed into `indicative.validators`\n* app.js - application setup sources\n* index.js - application entry point\n* swagger.yml - API documentation","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmrtimofey%2Fnode-stories","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmrtimofey%2Fnode-stories","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmrtimofey%2Fnode-stories/lists"}