{"id":21213865,"url":"https://github.com/chrscmpl/hivemind-backend-api","last_synced_at":"2026-05-04T16:38:04.406Z","repository":{"id":263196573,"uuid":"887288790","full_name":"chrscmpl/hivemind-backend-api","owner":"chrscmpl","description":"Backend REST API for the HiveMind web application, developed as part of a student project for the Web Technologies course at the University of Naples Federico II","archived":false,"fork":false,"pushed_at":"2025-03-20T11:09:20.000Z","size":495,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-20T12:24:05.093Z","etag":null,"topics":["backend","nest","node","rest","typescript"],"latest_commit_sha":null,"homepage":"","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/chrscmpl.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":"2024-11-12T13:44:13.000Z","updated_at":"2025-03-20T11:09:23.000Z","dependencies_parsed_at":"2024-11-16T22:26:08.575Z","dependency_job_id":"20747b29-ead0-4bae-a637-724a3c4e1349","html_url":"https://github.com/chrscmpl/hivemind-backend-api","commit_stats":null,"previous_names":["chrscmpl/hivemind-backend-api"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/chrscmpl/hivemind-backend-api","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chrscmpl%2Fhivemind-backend-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chrscmpl%2Fhivemind-backend-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chrscmpl%2Fhivemind-backend-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chrscmpl%2Fhivemind-backend-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chrscmpl","download_url":"https://codeload.github.com/chrscmpl/hivemind-backend-api/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chrscmpl%2Fhivemind-backend-api/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32616235,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-04T10:08:07.713Z","status":"ssl_error","status_checked_at":"2026-05-04T10:08:02.005Z","response_time":58,"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":["backend","nest","node","rest","typescript"],"created_at":"2024-11-20T21:24:23.408Z","updated_at":"2026-05-04T16:38:04.381Z","avatar_url":"https://github.com/chrscmpl.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://www.typescriptlang.org/\" target=\"blank\"\u003e\u003cimg src=\"images/ts-logo-512.svg\" width=\"120\" alt=\"TypeScript Logo\" style=\"margin-right:10px\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://nestjs.com/\" target=\"blank\"\u003e\u003cimg src=\"images/NestJS.svg\" width=\"120\" alt=\"Nest Logo\" style=\"margin-right:10px\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://typeorm.io/\" target=\"blank\"\u003e\u003cimg src=\"images/typeorm.svg\" width=\"120\" alt=\"TypeORM Logo\" style=\"margin-right:10px\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://swagger.io/\" target=\"blank\"\u003e\u003cimg src=\"images/swagger.svg\" width=\"120\" alt=\"Swagger Logo\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003ch1 align=\"Center\"\u003eHiveMind Backend\u003c/h1\u003e\n\nThis repository contains the source code for the HiveMind REST API, developed as part of a student project for the Web Technologies course in the Computer Science degree program at the University of Naples Federico II.\n\nIt is designed with the objectives of respecting REST principles as much as possible, enforcing validation in an elegant way, and documenting in detail following the OpenApi specification.\n\n## Build instructions\n\nTo run the project, hosting it on `http://localhost/`, first you will need to rename the file `.env.example` to `.env`, then run one of the following commands:\n\n```bash\n# development\n$ npm run start\n\n# watch mode\n$ npm run start:dev\n\n# production mode\n$ npm run start:prod\n```\n\nAfter running it, swagger documentation for the project can be viewed at `http://localhost/api-docs`\n\n## Technologies\n\n- The **[TypeScript](https://www.typescriptlang.org/)** programming language and the **[NestJS](https://nestjs.com/)** framework, built on top of **[Express](https://expressjs.com)** for **[NodeJS](https://nodejs.org/en)** were used for the development of the application.\n\n- **[TypeORM](https://typeorm.io/)** is the ORM used to store, query, manipulate data in a database.\n\n- The **[Swagger](https://swagger.io/)** was used to provide documentation for the REST API.\n\n- The packages **[class-validator](https://github.com/typestack/class-validator)** and **[class-transformer](https://github.com/typestack/class-transformer)** were used to define constraints and enforcing validation in an elegant, readable and extendable way, with the use of decorators.\n\n- Other important packages used for the project include **[passport-jwt](https://www.passportjs.org/packages/passport-jwt/)**, **[bcrypt](https://www.npmjs.com/package/bcrypt)**, **[sanitize-html](https://www.npmjs.com/package/sanitize-html)**, **[lodash](https://lodash.com/)**\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchrscmpl%2Fhivemind-backend-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchrscmpl%2Fhivemind-backend-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchrscmpl%2Fhivemind-backend-api/lists"}