{"id":23225945,"url":"https://github.com/ErikssonJoakim/hexagonal-user-application","last_synced_at":"2025-08-19T13:32:09.447Z","repository":{"id":222175257,"uuid":"756465554","full_name":"ErikssonJoakim/hexagonal-user-application","owner":"ErikssonJoakim","description":null,"archived":false,"fork":false,"pushed_at":"2024-02-13T12:55:54.000Z","size":276,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-02-13T19:37:56.088Z","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/ErikssonJoakim.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}},"created_at":"2024-02-12T18:06:09.000Z","updated_at":"2024-02-12T18:16:38.000Z","dependencies_parsed_at":"2024-02-12T19:48:11.459Z","dependency_job_id":null,"html_url":"https://github.com/ErikssonJoakim/hexagonal-user-application","commit_stats":null,"previous_names":["erikssonjoakim/hexagonal-user-application"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ErikssonJoakim%2Fhexagonal-user-application","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ErikssonJoakim%2Fhexagonal-user-application/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ErikssonJoakim%2Fhexagonal-user-application/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ErikssonJoakim%2Fhexagonal-user-application/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ErikssonJoakim","download_url":"https://codeload.github.com/ErikssonJoakim/hexagonal-user-application/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230355790,"owners_count":18213534,"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-12-19T00:02:27.975Z","updated_at":"2024-12-19T00:02:29.175Z","avatar_url":"https://github.com/ErikssonJoakim.png","language":"TypeScript","funding_links":[],"categories":["TypeScript"],"sub_categories":[],"readme":"# Hexagonal User Application\n\n[![test](https://github.com/ErikssonJoakim/hexagonal-user-application/actions/workflows/test.yml/badge.svg)](https://github.com/ErikssonJoakim/hexagonal-user-application/actions/workflows/test.yml)\n[![lint](https://github.com/ErikssonJoakim/hexagonal-user-application/actions/workflows/lint.yml/badge.svg)](https://github.com/ErikssonJoakim/hexagonal-user-application/actions/workflows/lint.yml)\n\n## Install\n\nThese instructions will get your project up and running on your local machine for development and testing purposes.\n\n### Prerequisites\n\nBe sure to have the following properly installed and running:\n\n- [Node.js](https://nodejs.org/ru/) `v18.18` ([gallium](https://nodejs.org/en/blog/release/v18.18.0/))\n- [yarn](https://classic.yarnpkg.com) `v1.22.21`\n- [Docker](https://www.docker.com/)\n\n### Setup\n\nInstall the dependencies and build the project:\n\n```sh\nyarn \u0026\u0026 yarn build\n```\n\n### Test\n\nTest the project with the following command:\n\n```sh\nyarn test\n```\n\nThis will build the project and launch `test:jest` and `test:e2e`.\n\n\u003e The e2e test launches the dockerized mysql database together with the graphql api service and the react app, before running the cypress e2e tests. Once completed it shuts down the database and deletes any data that was saved.\n\n### Launch\n\nLaunch the app of your choosing:\n\nGraphQL API (dependant on the MySQL database)\n\n```sh\nyarn start:graphql\n```\n\nReact web application (dependant on the GraphQL API)\n\n```sh\nyarn start:react-app\n```\n\n### Setting up the MySQL database\n\nLaunch the following commands to set up the database\n\n### Configuration\n\nThe database and server require certain environment variables to work. Go ahead and use the .env.example files provided by changing the file name to '.env'\n\n```sh\nmv .env.example .env \u0026\u0026 \\\nmv ./database/.env.example ./database/.env\n```\n\n### Build docker image\n\n```sh\ndocker build -t database-image ./database\n```\n\n### Run docker container\n\n```sh\ndocker run --restart=always -d --env-file=./database/.env -p 3306:3306 -v ${PWD}/database/data:/var/lib/mysql --name database-container database-image\n```\n\n### Execute queries inside the container\n\n```sh\ndocker exec -it db-container mysql -u root -psecret test\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FErikssonJoakim%2Fhexagonal-user-application","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FErikssonJoakim%2Fhexagonal-user-application","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FErikssonJoakim%2Fhexagonal-user-application/lists"}