{"id":20811200,"url":"https://github.com/andromedatechnology/firestarter-api","last_synced_at":"2026-02-09T01:34:21.562Z","repository":{"id":249782220,"uuid":"416942349","full_name":"AndromedaTechnology/firestarter-api","owner":"AndromedaTechnology","description":"🚀 Easy to extend, Progressive and Scalable API boilerplate to power your startup. ","archived":false,"fork":false,"pushed_at":"2024-07-05T09:02:03.000Z","size":110,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-07-27T20:59:51.257Z","etag":null,"topics":["api","boilerplate","koa","nodejs","starter","startup","startup-template","template","typescript"],"latest_commit_sha":null,"homepage":"https://andromeda.technology","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AndromedaTechnology.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2021-10-14T00:48:14.000Z","updated_at":"2024-12-31T11:52:25.000Z","dependencies_parsed_at":"2024-07-23T10:40:00.389Z","dependency_job_id":null,"html_url":"https://github.com/AndromedaTechnology/firestarter-api","commit_stats":null,"previous_names":["andromedatechnology/firestarter-api"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/AndromedaTechnology/firestarter-api","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AndromedaTechnology%2Ffirestarter-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AndromedaTechnology%2Ffirestarter-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AndromedaTechnology%2Ffirestarter-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AndromedaTechnology%2Ffirestarter-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AndromedaTechnology","download_url":"https://codeload.github.com/AndromedaTechnology/firestarter-api/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AndromedaTechnology%2Ffirestarter-api/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29252979,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-08T22:49:53.206Z","status":"ssl_error","status_checked_at":"2026-02-08T22:49:51.384Z","response_time":57,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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","boilerplate","koa","nodejs","starter","startup","startup-template","template","typescript"],"created_at":"2024-11-17T20:37:46.616Z","updated_at":"2026-02-09T01:34:21.522Z","avatar_url":"https://github.com/AndromedaTechnology.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003eFirestarter API - Progressive Startup API Boilerplate\u003c/h1\u003e\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://firestarter-api.andromeda.technology\"\u003e\u003cimg src=\"./storage/static/hero.jpg\"  alt=\"Firestarter API\" /\u003e\u003c/a\u003e\n  \u003cbr /\u003e\n  \u003cbr /\u003e\n  \u003ca href=\"https://firestarter-api.andromeda.technology\"\u003eProgressive Startup API Boilerplate\u003c/a\u003e\n  \u003cbr /\u003e\n  \u003ca href=\"https://firestarter-api.andromeda.technology\"\u003ehttps://firestarter-api.andromeda.technology\u003c/a\u003e\n\u003c/p\u003e\n\nEasy to extend, Progressive and Scalable API boilerplate to power your startup.\n\n## 1. Technology\n\n- [TypeScript](https://www.typescriptlang.org/),\n- [Koa.js](https://koajs.com/),\n- Database: [MongoDB](https://www.mongodb.com/): [Mongoose](https://mongoosejs.com/),\n- Config: [Dotenv](https://www.npmjs.com/package/dotenv), [Joi](https://joi.dev/),\n- Testing: [Jest](https://jestjs.io/): SuperTest, MongoDBMemoryServer,\n- [Docker](https://www.docker.com/): MongoDB.\n\n## 2. Usage\n\n1. Clone the repo,\n2. Duplicate `.env.example` files in [`./`,`/docker/`] to `.env`; modify as needed,\n3. Have `Docker` [installed](https://www.docker.com/get-started), run the containers and your app (check the instructions below),\n4. Add modules (routes, controllers, services, tests) to `/src` (duplicate Message module, adjust to your needs),\n5. List newly added modules (features) here (Readme.md) and in your POSTMAN collection.\n\n## 3. Features\n\n1. Message Module,\n2. [Add your modules/features here]\n\nAll API routes are prefixed by `API_PREFIX` (defined in`.env`) (default: `/api`).\n\n## 4. Setup\n\n**Docker**\n\nDocker provides isolated `MongoDB` for your project.\n\n```\ncd ./docker\n\n# Duplicate example env file, modify as needed\ncp .env.example .env\n\ndocker-compose up -d\n```\n\n**Application**\n\n```\n# Return from `docker` to root dir\n# cd ..\n\n# Duplicate example env file, modify if needed\ncp .env.example .env\n\n# Install packages\nnpm i\n\n# Run\nnpm run dev\n```\n\n## 5. Tests\n\nUsing `Jest` Testing Framework.\n\nJest uses `SuperTest` and `MongoDBMemoryServer`.\n\n```\nnpm run test\n```\n\n## 6. Postman\n\n[Postman Documentation](https://documenter.getpostman.com/view/97483/UUy67k8N)\n\n- (Link your Postman Documentation here)\n\nPre-set environment variables:\n\n- `host`\n- `admin_password`\n\nDynamic environment variables,\nautomatically set in tests:\n\n- `access_token`\n\n## 7. Admin Routes\n\nRoutes can be protected with `jwtCheck` middleware,\nrequiring admin rights.\n\nRequests going to these routes require `Authorization: Bearer {access_token}` header.\n\n**List of protected, i.e. Admin Routes**\n\n1. Message[Create,Update,Delete],\n2. [Add your protected routes here]\n\n**Getting access_token for the Admin user**\n\n- Request endpoint: `POST /auth/token`,\n- Pass your password in the request body: `{ password: ADMIN_PASSWORD }`,\n- Response will return created `token`.\n\nNote: Postman collection will automatically set `access_token` environment variable,\nso you can immediately call admin routes, without copy-pasting it or setting the env variable manually.\n\n**Getting the ADMIN_PASSWORD**\n\n- Your `ADMIN_PASSWORD` is defined in `.env` file.\n- It defaults to `secret`.\n\n## 8. Deployment\n\nIf you use MongoDB Atlas: Uncomment and fill `DB_URI` in `.env`.\n\n## 9. Social\n\nAndromeda\n\n- [Medium](https://medium.com/andromeda-technology)\n- [Twitter](https://twitter.com/andromeda_node)\n\n## 10. Rest\n\nHero image source: [FireStarter, gilad, DevianArt](https://www.deviantart.com/gilad/art/Firestarter-25634515).\n\n## 11. Related\n\n[🏄 Habitus](https://github.com/AndromedaTechnology/habitus)\n\n- State-of-the-art tracker for emotions, habits and thoughts,\n- Healthiest version of you,\n- Gamified,\n- Anonymous and open source.\n\n## 12. Contribute\n\nCheck [Self-Aware Software Artisan](http://selfawaresoftwareartisan.com) before contributing.\n\n\u003cbr/\u003e\n\u003ch5 align=\"center\"\u003e\n  \u003ca href=\"https://startedincroatia.com\"\u003eStarted in Europe, Croatia 🇭🇷\u003c/a\u003e\n\u003c/h5\u003e\n\u003ch3 align=\"center\"\u003e\n  Crafted with ❤️ \u003cbr /\u003e\n  by contributors around the 🌍 World and \u003ca href=\"https://andromeda.technology/\"\u003e🌌 Andromeda\u003c/a\u003e.\n\u003c/h3\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandromedatechnology%2Ffirestarter-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fandromedatechnology%2Ffirestarter-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandromedatechnology%2Ffirestarter-api/lists"}