{"id":25656338,"url":"https://github.com/amirshelli/mini-quote","last_synced_at":"2026-05-08T03:36:31.974Z","repository":{"id":258735473,"uuid":"599329593","full_name":"AmirShelli/mini-quote","owner":"AmirShelli","description":"A simple web-application using Spring framework and in-memory database that gives the ability to the users to post quotes and vote them.","archived":false,"fork":false,"pushed_at":"2023-03-03T07:28:58.000Z","size":152,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-10-20T12:11:26.583Z","etag":null,"topics":["h2-database","hibernate-jpa","java","microservices","spring","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":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AmirShelli.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":"2023-02-08T23:03:58.000Z","updated_at":"2023-02-17T11:58:43.000Z","dependencies_parsed_at":"2024-10-20T12:21:40.143Z","dependency_job_id":null,"html_url":"https://github.com/AmirShelli/mini-quote","commit_stats":null,"previous_names":["amirshelli/mini-quote"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AmirShelli%2Fmini-quote","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AmirShelli%2Fmini-quote/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AmirShelli%2Fmini-quote/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AmirShelli%2Fmini-quote/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AmirShelli","download_url":"https://codeload.github.com/AmirShelli/mini-quote/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240389730,"owners_count":19793733,"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":["h2-database","hibernate-jpa","java","microservices","spring","spring-boot"],"created_at":"2025-02-23T22:29:21.808Z","updated_at":"2026-05-08T03:36:26.944Z","avatar_url":"https://github.com/AmirShelli.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Mini-quote\n\nA simple web-application using Spring framework and an in-memory database that enables you to create users, post quotes and vote for them. \n\n## Launch\n\nUse the docker container from [my docker hub repository](https://hub.docker.com/repository/docker/thebluemitsu/kameleoon-trial-test/) to launch mini-quote.\n\n```bash\ndocker pull thebluemitsu/kameleoon-trial-test:kameleoon-test\ndocker run -t -p 8000:8000 thebluemitsu/kameleoon-trial-test:latest\n```\nOr clone the project on your machine and build it using docker compose.\n```bash\ngit clone git@github.com:bluMitsu/mini-quote.git kameleoon\ncd kameleoon\ndocker compose up\n```\n## Usage\nI use [Postman](https://web.postman.co) to test the application, however you can use any other way to send a request to the server.\n\nHere are the available endpoints; \n### from UserController\nYou can use the following JSON structure to create a user.\n* #### /register\n```json\n{\n    \"name\": \"name\",\n    \"email\": \"name@example.com\",\n    \"password\": \"password\"\n}\n```\n### from QuoteController\nYou can use the following JSON structure to add/update the needed quote accordingly or delete the quote from the database. \n* #### /{user_Id}/addQuote\n```json\n{\n    \"text\": \"hello, my name is Amir. I'm new to mini-quote.\"\n}\n```\n* #### /{user_Id}/{quote_Id}/updateQuote\n```json\n{\n    \"text\": \"I think I changed my mind.\"\n}\n```\n* #### /{user_Id}/{quote_Id}/deleteQuote\n### from VoteController\nThese endpoints allow you to up/down vote a quote.\n* #### /{user_Id}/{quote_Id}/upVote\n* #### /{user_Id}/{quote_Id}/downVote\n\u003eNote: each user can up/down vote a quote only once!\n### from ViewController\nThese endpoints allow you to view the quotes with different parameters.\n* #### /getAllQuotes\n* #### /getRandomQuote\n* #### /topTenQuotes\n* #### /flopTenQuotes\n\n## Example\n![image](https://user-images.githubusercontent.com/42302276/219646273-95616657-1c98-4ea8-a476-34ce9f7eedbb.png)\n\n\u003e~~Note: docker-compose.yaml file isn't set up properly just yet.~~\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famirshelli%2Fmini-quote","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Famirshelli%2Fmini-quote","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famirshelli%2Fmini-quote/lists"}