{"id":15101701,"url":"https://github.com/vitor0p9f/ruby-caesar-cipher","last_synced_at":"2025-09-26T22:31:47.370Z","repository":{"id":212805202,"uuid":"732365786","full_name":"vitor0p9f/ruby-caesar-cipher","owner":"vitor0p9f","description":"This repository was created with the aim of studying the functioning and implementation of the Cesar cipher. Project suggested by The Odin Project platform.","archived":true,"fork":false,"pushed_at":"2024-01-22T19:58:46.000Z","size":25,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-09-26T18:28:21.313Z","etag":null,"topics":["cryptography","docker","regex","rspec","ruby","tdd"],"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/vitor0p9f.png","metadata":{"files":{"readme":"README.en.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-12-16T12:44:38.000Z","updated_at":"2024-02-19T19:23:01.000Z","dependencies_parsed_at":"2024-01-22T21:16:28.446Z","dependency_job_id":"1adbf331-e8bc-4bc0-8f6b-7efb12f35150","html_url":"https://github.com/vitor0p9f/ruby-caesar-cipher","commit_stats":{"total_commits":26,"total_committers":2,"mean_commits":13.0,"dds":"0.23076923076923073","last_synced_commit":"3f6f00dfa0c9544d84cb8a50afa3da5537a0cdf6"},"previous_names":["vitor0p9f/ruby-caesar-cipher"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vitor0p9f%2Fruby-caesar-cipher","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vitor0p9f%2Fruby-caesar-cipher/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vitor0p9f%2Fruby-caesar-cipher/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vitor0p9f%2Fruby-caesar-cipher/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vitor0p9f","download_url":"https://codeload.github.com/vitor0p9f/ruby-caesar-cipher/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":234356530,"owners_count":18819381,"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":["cryptography","docker","regex","rspec","ruby","tdd"],"created_at":"2024-09-25T18:28:41.468Z","updated_at":"2025-09-26T22:31:47.021Z","avatar_url":"https://github.com/vitor0p9f.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align = \"center\"\u003e\n  \u003cp\u003eThis README is available in the following languages:\u003c/p\u003e\n  \u003cbr/\u003e\n  \n  \u003ca href = \"https://github.com/vitor0p9f/ruby-caesar-cipher/blob/main/README.md\" target=\"_blank\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/Language-Portuguese-green\"/\u003e\n  \u003c/a\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \n  # Study Repository - Ruby Caesar cipher\n\u003c/div\u003e\n\n\u003cp align=\"justify\"\u003e\n  This project was developed with the aim of learning more about the Ruby programming language and its concepts by applying them to the construction of an algorithm that performs text conversion using the Caesar cipher.\n\u003c/p\u003e\n\n## :movie_camera: Project demonstration\n\nhttps://github.com/vitor0p9f/ruby-caesar-cipher/assets/153991573/70808cfd-afe9-4413-b58e-fe0205b9a785\n\n## :gem: Used Gems\n\n* Rspec\n\n## :page_facing_up: Used Design Patterns\n\n* TDD(_Test Driven Development_)\n* Conventional commits\n\n## :pushpin: Acquired Knowledge\n\n* How to apply TDD to projects.\n* How to use Docker to create application containers.\n* Writing better commit messages with conventional commit standards.\n* Loops in Ruby.\n* Conditionals in Ruby.\n* Use of regex to identify patterns in strings.\n* Input and output of information in Ruby.\n\n## :triangular_flag_on_post: Challenges Encountered\n\n* Creating regex for string validations.\n\n## :rocket: Running the Project \n\n### 1. Clone the repository to your machine\n\nAfter the repository is on your machine, navigate to the newly cloned directory.\n\nTo run this project on your own machine, you can choose between the following options:\n\n* Run the project using Docker.\n* Run the project by installing the dependencies.\n\n### :whale2: Using Docker\n\n#### :construction: Requirements\n\n* Have Docker installed and configured on your machine.\n\n#### 2. Build an image of the project using the following command:\n\n```bash\ndocker build -t ruby-caesar-cipher .\n```\n\nThe created image will have the same name as the project.\n\n#### 3. Create a container based on the newly created image using the command:\n\n```bash\ndocker run -it --name ruby-caesar-cipher ruby-caesar-cipher\n```\n\nThe above command will use the previously created image to create a container with the project name.\n\nAfter running the above command, the container's terminal should automatically open, already executing the project code.\n\nTo run the project again without creating a new container, simply run the following command:\n\n```bash\ndocker start -i ruby-caesar-cipher\n```\n\n### :link: Installing Dependencies\n\n#### :construction: Requirements\n\n* Have Ruby installed on your machine.\n* I recommend using tools like RVM or rbenv to allow the installation of Gems without administrator permission.\n\n#### 2. Install project dependencies by running the command:\n\n```bash\nbundle install\n```\n\n#### 3. Run the project by executing the command:\n\n```bash\nruby caesar-cipher.rb\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvitor0p9f%2Fruby-caesar-cipher","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvitor0p9f%2Fruby-caesar-cipher","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvitor0p9f%2Fruby-caesar-cipher/lists"}