{"id":21106722,"url":"https://github.com/haliljon/rock-paper-scissors-itransition","last_synced_at":"2025-10-31T07:50:03.649Z","repository":{"id":199011616,"uuid":"701990201","full_name":"haliljon/Rock-paper-scissors-Itransition","owner":"haliljon","description":"This is a command-line implementation of a generalized rock-paper-scissors game with support for an arbitrary number of moves. The game includes features such as a cryptographically strong random key generation, HMAC (Hash-based Message Authentication Code) calculation, and a help menu that displays a win/lose/draw table for different move combos.","archived":false,"fork":false,"pushed_at":"2023-10-08T08:22:43.000Z","size":3,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-21T03:28:24.201Z","etag":null,"topics":["cli","ruby"],"latest_commit_sha":null,"homepage":"","language":"Ruby","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/haliljon.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":"2023-10-08T07:05:31.000Z","updated_at":"2023-10-08T08:24:55.000Z","dependencies_parsed_at":"2023-11-13T07:30:43.687Z","dependency_job_id":null,"html_url":"https://github.com/haliljon/Rock-paper-scissors-Itransition","commit_stats":null,"previous_names":["haliljon/rock-paper-scissors-itransition"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haliljon%2FRock-paper-scissors-Itransition","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haliljon%2FRock-paper-scissors-Itransition/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haliljon%2FRock-paper-scissors-Itransition/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haliljon%2FRock-paper-scissors-Itransition/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/haliljon","download_url":"https://codeload.github.com/haliljon/Rock-paper-scissors-Itransition/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243551327,"owners_count":20309300,"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":["cli","ruby"],"created_at":"2024-11-20T00:28:18.836Z","updated_at":"2025-10-31T07:50:03.565Z","avatar_url":"https://github.com/haliljon.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Rock-Paper-Scissors Game\n\n## Description\n\nThis is a command-line implementation of a generalized rock-paper-scissors game with support for an arbitrary number of moves. The game includes features such as a cryptographically strong random key generation, HMAC (Hash-based Message Authentication Code) calculation, and a help menu that displays a win/lose/draw table for different move combinations.\n\n## Features\n\n- Play a rock-paper-scissors game against the computer.\n- Generate a cryptographically strong random key for added security.\n- Calculate HMAC based on SHA-256.\n- Display a help menu with a win/lose/draw table.\n- Accept an arbitrary number of non-repeating moves.\n\n## Usage\n\n1. Clone this repository to your local machine.\n2. Make sure you have Ruby installed.\n3. Open your terminal and navigate to the project directory.\n4. Run the game with the following command:\n\n   ```\n   ruby game.rb \u003cmove1\u003e \u003cmove2\u003e ... \u003cmoveN\u003e\n   ```\n\n   Replace `\u003cmove1\u003e`, `\u003cmove2\u003e`, etc., with the available moves you want for your game.\n\n5. Follow the on-screen instructions to play the game. You can enter your move by typing the corresponding number and press Enter.\n\n## Example\n\nHere's an example of how to run the game:\n\n```\nruby game.rb rock paper scissors\n```\n\n## Requirements\n\n- Ruby (2.7+ recommended)\n- OpenSSL Ruby library\n\n## 🚀 Live Demo \u003ca name=\"live-demo\"\u003e\u003c/a\u003e\n\n- [Demo Video](https://www.loom.com/share/8e2d57e7dc5f4645819d3e381c174a14?sid=9bcb9ade-6864-4771-b037-e9625aff0a07)\n\n## Author\n\nHaliljon Juraboev\n\n- GitHub: [@githubhaliljon](https://github.com/haliljon)\n- Twitter: [@twitterhaliljon1](https://twitter.com/haliljon1)\n- LinkedIn: [LinkedIn](https://www.linkedin.com/in/juraboev-haliljon)\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](./LICENSE) file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhaliljon%2Frock-paper-scissors-itransition","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhaliljon%2Frock-paper-scissors-itransition","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhaliljon%2Frock-paper-scissors-itransition/lists"}