{"id":27699883,"url":"https://github.com/ppirog/lotto","last_synced_at":"2026-04-10T00:08:35.632Z","repository":{"id":226644117,"uuid":"758229089","full_name":"ppirog/Lotto","owner":"ppirog","description":"excercise to practise commercial technologies such as spring-boot, junit, mockito, mongodb, wiremock, docker, testcontainters, redis","archived":false,"fork":false,"pushed_at":"2024-04-06T15:15:23.000Z","size":437,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-25T17:45:56.623Z","etag":null,"topics":["docker","java","junit","lombok","maven","mockito","mongodb","redis","spring","spring-boot","spring-security","testcontainers","wiremock"],"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/ppirog.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-15T21:54:05.000Z","updated_at":"2024-03-28T21:28:39.000Z","dependencies_parsed_at":"2024-03-28T20:46:08.416Z","dependency_job_id":"a47b6615-1c54-4751-9073-9db7d2235a12","html_url":"https://github.com/ppirog/Lotto","commit_stats":null,"previous_names":["ppirog/lotto"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ppirog/Lotto","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ppirog%2FLotto","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ppirog%2FLotto/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ppirog%2FLotto/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ppirog%2FLotto/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ppirog","download_url":"https://codeload.github.com/ppirog/Lotto/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ppirog%2FLotto/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259884416,"owners_count":22926440,"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":["docker","java","junit","lombok","maven","mockito","mongodb","redis","spring","spring-boot","spring-security","testcontainers","wiremock"],"created_at":"2025-04-25T17:33:57.847Z","updated_at":"2025-12-30T20:06:58.008Z","avatar_url":"https://github.com/ppirog.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n  \u003ccode\u003e\u003cimg width=\"50\" src=\"https://user-images.githubusercontent.com/25181517/117201156-9a724800-adec-11eb-9a9d-3cd0f67da4bc.png\" alt=\"Java\" title=\"Java\"/\u003e\u003c/code\u003e\n\t\u003ccode\u003e\u003cimg width=\"50\" src=\"https://user-images.githubusercontent.com/25181517/117201470-f6d56780-adec-11eb-8f7c-e70e376cfd07.png\" alt=\"Spring\" title=\"Spring\"/\u003e\u003c/code\u003e\n  \u003ccode\u003e\u003cimg width=\"50\" src=\"https://user-images.githubusercontent.com/25181517/182884177-d48a8579-2cd0-447a-b9a6-ffc7cb02560e.png\" alt=\"mongoDB\" title=\"mongoDB\"/\u003e\u003c/code\u003e\n  \u003ccode\u003e\u003cimg width=\"50\" src=\"https://user-images.githubusercontent.com/25181517/182884894-d3fa6ee0-f2b4-4960-9961-64740f533f2a.png\" alt=\"redis\" title=\"redis\"/\u003e\u003c/code\u003e\t\n\t\u003ccode\u003e\u003cimg width=\"50\" src=\"https://user-images.githubusercontent.com/25181517/117207330-263ba280-adf4-11eb-9b97-0ac5b40bc3be.png\" alt=\"Docker\" title=\"Docker\"/\u003e\u003c/code\u003e\n  \u003ccode\u003e\u003cimg width=\"50\" src=\"https://user-images.githubusercontent.com/25181517/117533873-484d4480-afef-11eb-9fad-67c8605e3592.png\" alt=\"JUnit\" title=\"JUnit\"/\u003e\u003c/code\u003e\n\t\u003ccode\u003e\u003cimg width=\"50\" src=\"https://user-images.githubusercontent.com/25181517/183892181-ad32b69e-3603-418c-b8e7-99e976c2a784.png\" alt=\"mocikto\" title=\"mocikto\"/\u003e\u003c/code\u003e\n  \u003ccode\u003e\u003cimg width=\"50\" src=\"https://user-images.githubusercontent.com/25181517/184097317-690eea12-3a26-4f7c-8521-729ebbbb3f98.png\" alt=\"Testcontainers\" title=\"Testcontainers\"/\u003e\u003c/code\u003e\n\t\u003ccode\u003e\u003cimg width=\"50\" src=\"https://user-images.githubusercontent.com/25181517/192107854-765620d7-f909-4953-a6da-36e1ef69eea6.png\" alt=\"HTTP\" title=\"HTTP\"/\u003e\u003c/code\u003e\n\t\u003ccode\u003e\u003cimg width=\"50\" src=\"https://user-images.githubusercontent.com/25181517/192107858-fe19f043-c502-4009-8c47-476fc89718ad.png\" alt=\"REST\" title=\"REST\"/\u003e\u003c/code\u003e\n\t\u003ccode\u003e\u003cimg width=\"50\" src=\"https://user-images.githubusercontent.com/25181517/192108890-200809d1-439c-4e23-90d3-b090cf9a4eea.png\" alt=\"IntelliJ\" title=\"IntelliJ\"/\u003e\u003c/code\u003e\n\t\u003ccode\u003e\u003cimg width=\"50\" src=\"https://cdn.brighttalk.com/ams/california/images/channel/19357/image_840418.png\" alt=\"Auth0\" title=\"Auth0\"/\u003e\u003c/code\u003e\n\t\u003ccode\u003e\u003cimg width=\"50\" src=\"https://user-images.githubusercontent.com/25181517/117207242-07d5a700-adf4-11eb-975e-be04e62b984b.png\" alt=\"Maven\" title=\"Maven\"/\u003e\u003c/code\u003e\n\t\u003ccode\u003e\u003cimg width=\"50\" src=\"https://user-images.githubusercontent.com/25181517/190229463-87fa862f-ccf0-48da-8023-940d287df610.png\" alt=\"Lombok\" title=\"Lombok\"/\u003e\u003c/code\u003e\n\u003c/div\u003e    \n\nThis Application simulates lotto game. User gives input numbers and receive a ticket. Then every Saturday at 12:00 application generates winning numbers and at 12:05 user is able to check result.\n\nGenerating numbers is done by app using scheduler. To use application user has to register, login and fetch JWT token\n\nTo give input numbers use endpoint:\n- POST /inputNumbers\n\nTo check result use endpoint:\n- GET /results/{id}\n\nAll functionality are unit and integration tested.\n\n# Core\n- Java  \n- Spring  \n- MongoDb\n- Redis\n- Spring Security\n- Scheduler\n- Docker\n- JWT\n# Testing:\n- JUnit  \n- AssertJ\n- Mockito\n- Testcontainers\n- Wiremock\n- MockMvc\n\n# Architecture\n![image](https://github.com/ppirog/Lotto/assets/126290295/480a195f-9cac-4015-ac78-4d88b6918c74)\n\n# Postman\n![image](https://github.com/ppirog/Lotto/assets/126290295/91f110e1-4f7d-4676-8e13-7cb380e7a59c)\n![image](https://github.com/ppirog/Lotto/assets/126290295/5a686ed9-ade6-4bcf-bae5-c9b76f089329)\n![image](https://github.com/ppirog/Lotto/assets/126290295/de78b079-911e-4277-90bc-26e05b7f3527)\n![image](https://github.com/ppirog/Lotto/assets/126290295/f83ea9fd-b598-44b1-acec-9a202d71ac4c)\n![image](https://github.com/ppirog/Lotto/assets/126290295/e9d01725-2e89-4e5f-b112-d4644c101799)\n![image](https://github.com/ppirog/Lotto/assets/126290295/9d18e26d-d755-47e2-af79-543150c7e2a1)\n\n##### To start app go to go to file docker-compose.yml first and launch it\n\n\n\n\n\n\n\n\n\n  \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fppirog%2Flotto","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fppirog%2Flotto","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fppirog%2Flotto/lists"}