{"id":20944154,"url":"https://github.com/norbit4/licensesystem","last_synced_at":"2026-01-27T15:32:51.006Z","repository":{"id":230610522,"uuid":"757153748","full_name":"Norbit4/LicenseSystem","owner":"Norbit4","description":"System to manage and implement product licenses","archived":false,"fork":false,"pushed_at":"2024-04-03T20:08:30.000Z","size":224,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-09-30T04:30:57.369Z","etag":null,"topics":["api","discord","docker","java","javascript","license","product-license"],"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/Norbit4.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}},"created_at":"2024-02-13T22:47:34.000Z","updated_at":"2025-01-21T11:04:12.000Z","dependencies_parsed_at":"2024-04-03T21:27:52.970Z","dependency_job_id":null,"html_url":"https://github.com/Norbit4/LicenseSystem","commit_stats":null,"previous_names":["norbit4/licensesystem"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Norbit4/LicenseSystem","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Norbit4%2FLicenseSystem","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Norbit4%2FLicenseSystem/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Norbit4%2FLicenseSystem/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Norbit4%2FLicenseSystem/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Norbit4","download_url":"https://codeload.github.com/Norbit4/LicenseSystem/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Norbit4%2FLicenseSystem/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28815406,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-27T12:25:15.069Z","status":"ssl_error","status_checked_at":"2026-01-27T12:25:05.297Z","response_time":168,"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":["api","discord","docker","java","javascript","license","product-license"],"created_at":"2024-11-18T23:39:24.221Z","updated_at":"2026-01-27T15:32:50.987Z","avatar_url":"https://github.com/Norbit4.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"left\"\u003e\u003cb\u003eLicense System\u003c/b\u003e\u003c/h1\u003e\n\n\nThe License System project provides full control over the application license system through an API with built-in authorization. It allows quick management of licenses, including creating, editing, deleting and viewing information. Integration with the Discord bot allows you to generate reports, check the validity of licenses and assign them to users, making administration much easier.\n\nAPI is dedicate to minecraft plugins but can by used in other products and apps.\n\n\u003ch5 align=\"left\"\u003eUsed Languages and Tools:\u003c/h5\u003e\n\n\u003cp align=\"left\"\u003e\n  \u003ca href=\"https://skillicons.dev\"\u003e\n    \u003cimg src=\"https://skillicons.dev/icons?i=java,spring,js,discordjs,nodejs,docker,mysql\"/\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n\n\u003ch2 align=\"left\" id=\"content\"\u003eTable of contents\u003c/h2\u003e\n\n- [How does it work?](#work)\n- [Documentation](#doc)\n- [Discord bot](#bot)\n- [Example implementation](#implementation)\n- [Tests](#tests)\n\n\n\u003ch2 align=\"left\" id=\"work\"\u003eHow does it work?\u003c/h2\u003e\n\n\u003cbr\u003e\n\n![schema](https://github.com/Norbit4/LicenseSystem/assets/46154743/dcca63ec-6953-41b3-8c13-5e425c0f85f9)\n\n\u003cbr\u003e\n\n- *On startup:*\n\n```yml\ncurl -X 'GET' \\\n  'http://localhost:8080/api/v1/license/generateServerKey/\u003clicenseKey\u003e' \\\n  -H 'accept: */*' \\\n  -H 'Authorization: admin-secret-token'\n```   \n\nWhen the application starts, it performs a reqest to the API to verify if the token key is correct and generate a new serverKey. \nIf the license key is correct it sends the new generated serverKey. \n\n- *On running:*\n\n```yml\ncurl -X 'PUT' \\\n  'http://localhost:8080/api/v1/license/isValidServerKey' \\\n  -H 'accept: */*' \\\n  -H 'Authorization: admin-secret-token' \\\n  -H 'Content-Type: application/json' \\\n  -d '{\n  \"licenseKey\": \"string\",\n  \"serverKey\": \"string\"\n  }'\n```   \n\nThe application every x time sends a request to the API to verify if the server key is correct.\nIf it is not correct it means that another application with the same license key has been started. Then the application closes.\n\n\u003cdiv align=\"right\"\u003e\u003ca href=\"#content\"\u003eBack to top\u003c/a\u003e\u003c/div\u003e\n\n\u003ch2 align=\"left\" id=\"doc\"\u003eRun\u003c/h2\u003e\n\n1. Clone repository\n\n```\ngit clone https://github.com/Norbit4/LicenseSystem\n```\n\n2. [Create discord bot](https://discord.com/developers/docs/intro) and invite bot to your server\n\n\n3. Copy \u003cb\u003ebot token\u003c/b\u003e and paste it to \u003cb\u003edocker-compose.yml \u003c/b\u003e\n\n4. Start app\n\n```\ndocker-compose up\n```\n\n\u003cdiv align=\"right\"\u003e\u003ca href=\"#content\"\u003eBack to top\u003c/a\u003e\u003c/div\u003e\n\n\u003ch2 align=\"left\" id=\"doc\"\u003eDocumentation\u003c/h2\u003e\n\nDocumentation was created using [OpenApi](https://github.com/OAI)\n\n- \u003cb\u003e local env: http://localhost:8080/swagger-ui/index.html \u003c/b\u003e\n\n\n \u003ci\u003epreview:\u003c/i\u003e\n![doc_example](https://github.com/Norbit4/LicenseSystem/assets/46154743/d1097c45-80ed-4bc4-bfa0-dff6c6ae417d)\n\n\u003cdiv align=\"right\"\u003e\u003ca href=\"#content\"\u003eBack to top\u003c/a\u003e\u003c/div\u003e\n\n\u003ch2 align=\"left\" id=\"bot\"\u003eDiscord bot\u003c/h2\u003e\n\nThe discord bot allows easy management of licenses and tokens.\n\n\u003ci\u003epreview:\u003c/i\u003e\n- Licenses\n\n![license_create](https://github.com/Norbit4/LicenseSystem/assets/46154743/85352472-e3d1-4111-b64a-4dab94a1c053)\n\n![license_check](https://github.com/Norbit4/LicenseSystem/assets/46154743/190be861-74c0-4c47-bf17-14a78eca3670)\n\n- Report\n  \n![report](https://github.com/Norbit4/LicenseSystem/assets/46154743/353c196e-2779-4b80-8475-379067f9b6f5)\n\n- Tokens\n\n![token_create](https://github.com/Norbit4/LicenseSystem/assets/46154743/219d97b3-1834-4a06-b957-7b30c9f5fb73)\n\n![token_notfoud](https://github.com/Norbit4/LicenseSystem/assets/46154743/81a1b8ca-0403-4977-a34c-0c3d75b6a724)\n\n\u003cdiv align=\"right\"\u003e\u003ca href=\"#content\"\u003eBack to top\u003c/a\u003e\u003c/div\u003e\n\n\u003ch2 align=\"left\" id=\"implementation\"\u003eExample implementation\u003c/h2\u003e\n\n[Click to view](https://github.com/Norbit4/LicenseSystem/tree/master/example/exampleplugin/src/main/java/pl/norbit/exampleplugin)\n\n\n\u003ch2 align=\"left\" id=\"tests\"\u003eTests\u003c/h2\u003e\n\n![tests](https://github.com/Norbit4/LicenseSystem/assets/46154743/bce4a16e-ebc0-4029-a552-0bf36b0977c7)\n\n\u003ca href=\"https://github.com/Norbit4/LicenseSystem/assets/46154743/d5e224ef-a6f0-4bed-a011-e0a7cd39fa2c\" target=\"_blank\" rel=\"noreferrer\"\u003e \n\u003cimg src=\"https://github.com/Norbit4/LicenseSystem/assets/46154743/d5e224ef-a6f0-4bed-a011-e0a7cd39fa2c\" width=630\" alt=\"logo\"/\u003e\u003c/a\u003e\n\n\u003cdiv align=\"right\"\u003e\u003ca href=\"#content\"\u003eBack to top\u003c/a\u003e\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnorbit4%2Flicensesystem","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnorbit4%2Flicensesystem","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnorbit4%2Flicensesystem/lists"}