{"id":19225988,"url":"https://github.com/developer239/pokemon-rest-mongo","last_synced_at":"2025-10-06T08:14:26.027Z","repository":{"id":219522567,"uuid":"749175486","full_name":"developer239/pokemon-rest-mongo","owner":"developer239","description":null,"archived":false,"fork":false,"pushed_at":"2024-01-28T23:10:28.000Z","size":982,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-07-08T18:09:49.050Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","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/developer239.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":"2024-01-27T19:44:19.000Z","updated_at":"2024-01-28T03:12:26.000Z","dependencies_parsed_at":null,"dependency_job_id":"9b739bba-c2b0-46cb-8357-8668bce12020","html_url":"https://github.com/developer239/pokemon-rest-mongo","commit_stats":null,"previous_names":["developer239/pokemon-rest-mongo"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/developer239/pokemon-rest-mongo","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/developer239%2Fpokemon-rest-mongo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/developer239%2Fpokemon-rest-mongo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/developer239%2Fpokemon-rest-mongo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/developer239%2Fpokemon-rest-mongo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/developer239","download_url":"https://codeload.github.com/developer239/pokemon-rest-mongo/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/developer239%2Fpokemon-rest-mongo/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278577950,"owners_count":26009707,"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","status":"online","status_checked_at":"2025-10-06T02:00:05.630Z","response_time":65,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":[],"created_at":"2024-11-09T15:17:01.198Z","updated_at":"2025-10-06T08:14:25.987Z","avatar_url":"https://github.com/developer239.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Pokemon API\n\n![master](https://github.com/developer239/pokemon-rest-mongo/actions/workflows/api-ci.yml/badge.svg)\n\n![preview](./preview.png)\n\n## Table of Contents\n\n- [Setup](#setup)\n- [Development](#development)\n- [Database](#database)\n- [Testing](#testing)\n\n## Run with Docker\n\n```bash\ndocker-compose up\n```\n\n**Note:** By default it uses `.env.template`.\n\n## Setup\n\n1. Install dependencies: `make install` (the project uses [yarn](https://github.com/yarnpkg))\n2. Create local environment file: `cp .env.template .env`\n3. Run infrastructure `make infra`\n4. Run development server: `make develop`\n\n## Development\n\n- `make infra` - start postgres docker container\n- `make develop` - start development server\n- `make type-check` - run type checking\n- `make lint-fix` - run linter\n- `make format` - run prettier\n\n## Database\n\n- `make seed-database` - truncate all tables and seed database with initial data\n\n```mermaid\nclassDiagram\n  class User {\n    string _id\n    string email\n    string password (hidden)\n    ObjectId[] favoritePokemons (references Pokemon)\n  }\n  class Pokemon {\n    string _id\n    number number\n    string name\n    string classification\n    string[] types\n    string[] resistant\n    string[] weaknesses\n    object weightRange\n    object heightRange\n    number fleeRate\n    number maxCP\n    number maxHP\n    ObjectId[] favoritedBy (references User)\n    Attack[] attacks\n    EvolutionRequirement evolutionRequirements\n    Evolution[] evolutions\n  }\n  class Attack {\n    string name\n    string type\n    AttackCategory category\n    number damage\n  }\n  class EvolutionRequirement {\n    number amount\n    string name\n  }\n  class Evolution {\n    string name\n    number number\n  }\n\n  User \"1\" *-- \"*\" Pokemon : favoritePokemons\n  Pokemon \"1\" *-- \"*\" Attack : attacks\n  Pokemon \"1\" *-- \"1\" EvolutionRequirement : evolutionRequirements\n  Pokemon \"1\" *-- \"1\" Evolution : evolutions\n  Pokemon \"1\" *-- \"*\" User : favoritedBy\n```\n\n## Testing\n\nMost of the tests are E2E tests and require connection to the database.\n\n- `make test` - run all tests\n- `make coverage` - run test coverage\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdeveloper239%2Fpokemon-rest-mongo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdeveloper239%2Fpokemon-rest-mongo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdeveloper239%2Fpokemon-rest-mongo/lists"}