{"id":22131328,"url":"https://github.com/rrxs/amazonia-app","last_synced_at":"2026-04-10T13:30:59.388Z","repository":{"id":199603735,"uuid":"703291520","full_name":"rrxs/amazonia-app","owner":"rrxs","description":"Tech test for job application using Angular and NestJs","archived":false,"fork":false,"pushed_at":"2024-01-11T02:40:38.000Z","size":1250,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-01-03T13:48:36.091Z","etag":null,"topics":["angular","aws-ec2","cypress","docker","docker-compose","nestjs","nodejs","tailwind-css","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/rrxs.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":"2023-10-11T01:12:13.000Z","updated_at":"2024-01-21T10:47:31.000Z","dependencies_parsed_at":"2024-01-05T00:11:17.592Z","dependency_job_id":"395708a0-d806-42e4-99b1-1ddaa3b8281f","html_url":"https://github.com/rrxs/amazonia-app","commit_stats":null,"previous_names":["rrxs/amazonia-app"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/rrxs/amazonia-app","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rrxs%2Famazonia-app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rrxs%2Famazonia-app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rrxs%2Famazonia-app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rrxs%2Famazonia-app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rrxs","download_url":"https://codeload.github.com/rrxs/amazonia-app/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rrxs%2Famazonia-app/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31645160,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-10T07:40:12.752Z","status":"ssl_error","status_checked_at":"2026-04-10T07:40:11.664Z","response_time":98,"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":["angular","aws-ec2","cypress","docker","docker-compose","nestjs","nodejs","tailwind-css","typescript"],"created_at":"2024-12-01T18:32:40.718Z","updated_at":"2026-04-10T13:30:59.370Z","avatar_url":"https://github.com/rrxs.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Amazônia Project\n\n![Amazônia](images/logo.png)\n\n## Description\n\nA dynamic web application for **Amazônia**, a fictional brand created in a technological challenge promoted by the company [**Ateliware**](https://ateliware.com).\n\nThe objective of the challenge is to develop a web application\nresponsible for calculate the **fastest** delivery route for a drone system.\n\n## Challenge\n\nThe challenge is to create a solution for a drone system, which must navigate a map to make quick deliveries. The drone must calculate from 3 positions entered by the user.\n\nStarting from a list of positions and a travel time between them, similar to a chessboard. The system must be able to calculate the fastest route using only bidirectional movements. The solution to this was based on [Dijkstra's algorithm](https://en.wikipedia.org/wiki/Dijkstra%27s_algorithm) and can be found [here](https://github.com/rrxs/amazonia-app/blob/main/backend/src/utils/calculationFunctions.ts).\n\nThe system first uses the function to calculate the distance and path between the origin point and the object's position and then repeats the process from the object's position to the final destination.\n\nFor example, if the user wants to calculate the fastest path with the data.\n\n- Origin: **C2**\n- Object: **G2**\n- Destination: **H1**\n\nThe system should return:\n\nPath: **C2**-C3-D3-E3-F3-F2-**G2**-G1-**H1** \\\nTravel time: 135 seconds\n\n\n## Technologies Used\n\n- Angular v16\n- Tailwind CSS\n- Typescript v5\n- Cypress\n- NestJs v10\n- Node.js v18\n- Docker\n- AWS EC2\n\n## Live Demo\n\n~~You can see the application live at Live demo~~\n\n## Features\n\n- Users can calculate the fastest route providing a origin, object location and a destination.\n- Users can see a list of last 10 calculations.\n- Form validation using Angular Reactive forms.\n- Full responsive using Tailwind CSS.\n- Unit tests.\n- e2e tests.\n\n## Preview\n\n![Project Demo](images/demo.gif)\n\n## Folder structure\n\n```text\n    root\n    │\n    ├── backend\n    │   ├── src\n    │   │   ├── controllers\n    │   │   ├── models\n    │   │   ├── services\n    │   │   └── utils\n    │   └── test (e2e tests)\n    │\n    ├── frontend\n    │   ├── cypress\n    │   └── src\n    │       ├── app\n    │       │   ├── components\n    │       │   ├── models\n    │       │   ├── pages\n    │       │   ├── services\n    │       │   └── utils\n    │       ├── assets\n    │       └── environments\n    │\n    │\n    ├── docker-compose.prod.yml\n    └── docker-compose.yml\n```\n\n## Running locally\n\nFirst clone the repository.\n\n```shell\ngit clone https://github.com/rrxs/amazonia-app.git\ncd amazonia-app\n```\n\nYou can run the application using **docker** or build and run manually.\n\n### Using Docker\n\nRun `docker-compose up`. Navigate to `http://localhost:4400/`.\n\n## Development server\n\n### Prerequisites\n\n[Node v18](https://nodejs.org/en)\n\n### Backend\n\nFind more details [here](https://github.com/rrxs/amazonia-app/tree/main/backend).\n\n```shell\n# navigate to backend folder\ncd backend\n\n# install all dependencies\nnpm install\n\n# run\nnpm run start\n```\n\nThe server should be running on port `4300`.\n\n### Frontend\n\nFind more details [here](https://github.com/rrxs/amazonia-app/tree/main/frontend).\n\nIn another terminal.\n\n```shell\n# navigate to frontend folder\ncd frontend\n\n# install all dependencies\nnpm install\n\n# run\nnpm run start\n```\n\nOnce started you can view the application by opening `http://localhost:4200` in your browser.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frrxs%2Famazonia-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frrxs%2Famazonia-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frrxs%2Famazonia-app/lists"}