{"id":19947035,"url":"https://github.com/rodrigo-sp17/super-vuttr","last_synced_at":"2026-05-09T07:37:32.471Z","repository":{"id":115689479,"uuid":"350403641","full_name":"rodrigo-sp17/super-vuttr","owner":"rodrigo-sp17","description":"REST API for Very Useful Tools To Remember","archived":false,"fork":false,"pushed_at":"2021-03-22T23:12:20.000Z","size":55,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"develop","last_synced_at":"2025-01-12T05:28:01.256Z","etag":null,"topics":["mongodb","rest-api","spring-boot"],"latest_commit_sha":null,"homepage":"","language":"Java","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/rodrigo-sp17.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":"2021-03-22T15:57:03.000Z","updated_at":"2021-05-19T18:12:14.000Z","dependencies_parsed_at":null,"dependency_job_id":"5fb3e570-a24d-4757-a2c9-36081ac86b94","html_url":"https://github.com/rodrigo-sp17/super-vuttr","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rodrigo-sp17%2Fsuper-vuttr","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rodrigo-sp17%2Fsuper-vuttr/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rodrigo-sp17%2Fsuper-vuttr/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rodrigo-sp17%2Fsuper-vuttr/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rodrigo-sp17","download_url":"https://codeload.github.com/rodrigo-sp17/super-vuttr/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241374547,"owners_count":19952545,"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":["mongodb","rest-api","spring-boot"],"created_at":"2024-11-13T00:34:02.426Z","updated_at":"2026-05-09T07:37:27.444Z","avatar_url":"https://github.com/rodrigo-sp17.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Super Vuttr\r\n![Badge](https://img.shields.io/github/workflow/status/rodrigo-sp17/super-vuttr/Deploy%20to%20Heroku)\r\n![Badge](https://img.shields.io/github/issues/rodrigo-sp17/super-vuttr)\r\n![Badge](https://img.shields.io/github/last-commit/rodrigo-sp17/super-vuttr)\r\n\r\nHave you ever caught yourself trying to remember that *Very Useful Tool To Remember?*\r\nWell, sweat no more: Super VUTTR will remember them for you!\r\n\r\n## Motivation\r\nThis REST API was built as part of a challenge for BossaBox website.\r\n\r\n## Description\r\nThe API provides Create, Read and Delete operations for useful tools.\r\n\r\nThis project was built using Spring Boot and MongoDB. The data layer uses a repository pattern on top of Spring Data\r\nMongoDB, which greatly cuts down on boilerplate.\r\n\r\nAll resources except for *login*, *signup* and *documentation* are protected using Spring Security and JWT.\r\n\r\nThe data transfer between client and server follows the DTO pattern.\r\n\r\nDeployment to Heroku and testing are automated using GitHub Actions pipelines.\r\n\r\n## Prerequisites\r\n- [Java JDK 15](https://www.oracle.com/java/technologies/javase-downloads.html)\r\n- [Maven](https://maven.apache.org/download.cgi) - Tested with 3.6.3\r\n\r\n## Instructions\r\nSet the following environment variables before running:\r\n```sh\r\nJWT_SECRET=\u003cyourJWTsecret\u003e\r\nURI=\u003cyourMongoDBProductionURI\u003e\r\nTEST_URI=\u003cyourMongoDBTestURI\u003e\r\n```\r\nThen, clone this repository to your local machine and run the following command on the project's root folder:\r\n```sh\r\nmvn spring-boot:run\r\n```\r\nWhen the server is running, you can use cURL or Postman to make requests.\r\n\r\n## Usage\r\nThe API is deployed on Heroku at https://super-vuttr.herokuapp.com/.\r\n\r\nYou can check the Swagger-UI for the API [here](https://super-vuttr.herokuapp.com/swagger-ui.html).\r\n\r\nAdditionally, you can check the OpenAPI documentation in JSON format [here](https://super-vuttr.herokuapp.com/api-docs).\r\n\r\n## Tech Stack\r\n- [Spring Boot](https://spring.io/projects/spring-boot)\r\n- [MongoDB](https://www.mongodb.com/)\r\n- [Spring Data MongoDB](https://spring.io/projects/spring-data-mongodb)\r\n- [Spring HATEOAS](https://spring.io/projects/spring-hateoas) \r\n- [Spring Security](https://spring.io/projects/spring-security)\r\n- [Lombok](https://projectlombok.org/)\r\n- [springdoc-openapi](https://springdoc.org/)\r\n\r\n## License\r\n[MIT](https://opensource.org/licenses/MIT)\r\n\r\n\r\n\r\n\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frodrigo-sp17%2Fsuper-vuttr","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frodrigo-sp17%2Fsuper-vuttr","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frodrigo-sp17%2Fsuper-vuttr/lists"}