{"id":19326199,"url":"https://github.com/marlinsk/jr-full-stack-developer-challenge","last_synced_at":"2026-04-09T13:55:17.219Z","repository":{"id":168664573,"uuid":"643089166","full_name":"Marlinsk/jr-full-stack-developer-challenge","owner":"Marlinsk","description":"Full-stack project developed for evaluation in a recruitment process.","archived":false,"fork":false,"pushed_at":"2023-10-26T05:00:19.000Z","size":258,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-18T05:49:36.080Z","etag":null,"topics":["axios","back-end-development","frameworks","front-end-web-development","jawascript","nestjs","nodejs","npm","prisma-orm","radix","radix-ui","react","react-hook-form","sqlite","swagger-ui","tailwindcss","typescript","vitejs","zod"],"latest_commit_sha":null,"homepage":"","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/Marlinsk.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}},"created_at":"2023-05-20T04:28:03.000Z","updated_at":"2023-12-11T01:45:42.000Z","dependencies_parsed_at":null,"dependency_job_id":"571e1838-6873-49e1-95b8-ea8412e5c959","html_url":"https://github.com/Marlinsk/jr-full-stack-developer-challenge","commit_stats":null,"previous_names":["marlinsk/desafio-dev-fullstack-jr"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Marlinsk/jr-full-stack-developer-challenge","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Marlinsk%2Fjr-full-stack-developer-challenge","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Marlinsk%2Fjr-full-stack-developer-challenge/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Marlinsk%2Fjr-full-stack-developer-challenge/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Marlinsk%2Fjr-full-stack-developer-challenge/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Marlinsk","download_url":"https://codeload.github.com/Marlinsk/jr-full-stack-developer-challenge/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Marlinsk%2Fjr-full-stack-developer-challenge/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279013459,"owners_count":26085274,"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-12T02:00:06.719Z","response_time":53,"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":["axios","back-end-development","frameworks","front-end-web-development","jawascript","nestjs","nodejs","npm","prisma-orm","radix","radix-ui","react","react-hook-form","sqlite","swagger-ui","tailwindcss","typescript","vitejs","zod"],"created_at":"2024-11-10T02:12:45.885Z","updated_at":"2025-10-12T23:14:43.864Z","avatar_url":"https://github.com/Marlinsk.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Full-stack web project with React.js \u0026 Nest.js.\r\n![https://nodejs.org/en/docs](https://img.shields.io/static/v1?label\u0026?style=flat\u0026logo=nodedotjs\u0026logoColor=339933\u0026message=node.js\u0026color=026e00)\r\n![https://swagger.io/tools/swagger-ui/](https://img.shields.io/static/v1?label\u0026?style=flat\u0026logo=swagger\u0026logoColor=173647\u0026message=swagger\u0026color=85EA2D)\r\n![https://www.npmjs.com/](https://img.shields.io/static/v1?label\u0026?style=flat\u0026logo=npm\u0026logoColor=FFFFFF\u0026message=npm\u0026color=CB3837)\r\n![https://react.dev](https://img.shields.io/static/v1?label\u0026?style=flat\u0026logo=react\u0026logoColor=61DAFB\u0026message=react.js\u0026color=087ea4\u0026)\r\n![https://vitejs.dev](https://img.shields.io/static/v1?label\u0026?style=flat\u0026logo=vite\u0026logoColor=FFC93C\u0026message=vite\u0026color=646CFF)\r\n![https://tailwindcss.com](https://img.shields.io/static/v1?label\u0026?style=flat\u0026logo=tailwindcss\u0026logoColor=06B6D4\u0026message=tailwindcss\u0026color=172554)\r\n![https://www.typescriptlang.org](https://img.shields.io/static/v1?label\u0026?style=flat\u0026logo=typescript\u0026logoColor=FFFFFF\u0026message=typescript\u0026color=3178C6)\r\n![https://nestjs.com](https://img.shields.io/static/v1?label\u0026?style=flat\u0026logo=nestjs\u0026logoColor=E0234E\u0026message=nest.js\u0026color=111)\r\n![https://www.prisma.io](https://img.shields.io/static/v1?label\u0026?style=flat\u0026logo=prisma\u0026logoColor=FFFFFF\u0026message=prisma\u0026color=2D3748)\r\n\r\nA simple full-stack web project developed for practical knowledge testing of both back-end and front-end.\r\n\r\n### 🛠 Technologies\r\n- Nodejs \r\n- Nestjs \r\n- @nestjs/swagger\r\n- Typescript \r\n- PrismaORM \r\n- Sqlite\r\n- React \r\n- Vite \r\n- Typescript \r\n- Axios \r\n- React-Hook-Form \r\n- Zod \r\n- Tailwindcss\r\n- Radix-ui\r\n- Radix-icons\r\n\r\n## After cloning the repository, follow these steps to download the dependencies\r\nTo proceed with this step, you need to have knowledge of terminal commands, npm, and VSCode.\r\n\r\n**1º step:** Open the project in VSCode and then open two terminals, one for the backend folder and the other for the frontend folder\r\n\r\n**2º step:** After accessing both folders in the terminal, enter the following command in both terminals:\r\n```\r\nnpm i\r\n```\r\n\u003e Once all dependencies have finished installing, both projects are ready to be executed. To understand how to run each one, follow the step-by-step guide below.\r\n\r\n## 📙 Front-end Project Guide\r\nTo run the front-end application, go to the terminal where the frontend folder is open and type the following command:\r\n```\r\nnpm run dev\r\n```\r\n\u003e When the application starts running, click on the link shown in the terminal console to access the web application.\r\n\r\n**Note:** To view the table, it's necessary for the backend to be running and have data in the database.\r\n\r\n\r\n\u003cimg align=\"center\" alt=\"Printscreen\" src=\"https://github.com/Marlinsk/desafio-dev-fullstack-jr/blob/main/.github/Print%20recortado%20da%20aplica%C3%A7%C3%A3o%20front-end.png\"\u003e\r\n\r\n## 📙 Back-end Project Guide\r\nTo run the back-end application, go to the terminal where the backend folder is open and type the following command:\r\n```\r\nnpm run start:dev\r\n```\r\n\u003e If you want to run it without the dev mode, simply remove the :dev part.\r\n\r\nPort on which the project runs\r\n```\r\nlocalhost:4015\r\n```\r\n\u003e The project will run on port 4015. If you want to change it, go to the main file and modify the port. Note: If you change the port, make sure to also change it in the front-end in the src/api/Api.ts file.\r\n\r\n### Accessing Prisma Studio\r\nThe database used in the project is SQLite, which is a database stored internally in the project folder, making it easy to connect to and can be accessed to modify table data using either **beekeeper studio** or **prisma**. For this case, we will use **prisma**.\r\n\r\nTo access Prisma Studio, go to the backend terminal and type the following command:\r\n```\r\nnpx prisma studio\r\n```\r\n\u003e After execution, a web page will open where you can access tables, create data, modify them, and delete them. To exit, simply close the tab in your browser and press **CTRL + C** in the terminal.\r\n\r\n### Accessing the OpenAPI Documentation for HTTP Routes Online\r\nTo access the OpenAPI documentation, enter the following URL:\r\n```\r\nlocalhost:4015/doc\r\n```\r\n\u003e In the OpenAPI documentation, you will see how to perform each **HTTP request** and view its response. If you want to put it into practice using Postman or Insomnia, you will need to take the schema for each URL route described in the documentation and copy the **JSON** to make **POST** and **DELETE** requests.\r\n\r\n### Route Descriptions\r\nRoute Descriptions\r\n\r\n**POST** Create Empresa (Create Company):\r\n\r\nCreates a company.\r\n\r\n\u003e /empresa\r\n\r\n**GET** Find Empresa by ID (Find Company by ID):\r\n\r\nDisplays the data of a company. You need to pass the company's ID through the Path Variables of the request.\r\n\r\n\u003e /empresa/:id\r\n\r\n**GET** List All Empresas (List All Companies):\r\n\r\nLists all registered companies.\r\n\r\n\u003e /empresa\r\n\r\n**PATCH** Update Empresa (Update Company):\r\n\r\nIn this route, you can update company data. You need to pass the company's ID through the Path Variables of the request and then pass the JSON in the request body. Please note that you don't need to include the ID in the JSON body, only in the path.\r\n\r\n\u003e /empresa/:id\r\n\r\n**DELETE** Delete Empresa (Delete Company):\r\n\r\nIn this route, you can delete a company by providing the ID in the Path Variables.\r\n\r\n\u003e /empresa/:id\r\n\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarlinsk%2Fjr-full-stack-developer-challenge","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmarlinsk%2Fjr-full-stack-developer-challenge","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarlinsk%2Fjr-full-stack-developer-challenge/lists"}