{"id":19692468,"url":"https://github.com/johansenja/codewords_solver","last_synced_at":"2025-02-27T09:54:03.254Z","repository":{"id":217564043,"uuid":"744259667","full_name":"johansenja/codewords_solver","owner":"johansenja","description":"A simple algorithm for solving codeword puzzles","archived":false,"fork":false,"pushed_at":"2024-02-13T13:50:37.000Z","size":46,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-10T11:46:05.526Z","etag":null,"topics":["codeword","codewords","crossword","cypher","ruby"],"latest_commit_sha":null,"homepage":"","language":"Ruby","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/johansenja.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}},"created_at":"2024-01-16T23:42:01.000Z","updated_at":"2024-01-16T23:54:05.000Z","dependencies_parsed_at":"2024-01-27T14:24:37.651Z","dependency_job_id":"23e14e6f-cb6e-45ca-be13-f0c21b7faa82","html_url":"https://github.com/johansenja/codewords_solver","commit_stats":null,"previous_names":["johansenja/codewords_solver"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johansenja%2Fcodewords_solver","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johansenja%2Fcodewords_solver/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johansenja%2Fcodewords_solver/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johansenja%2Fcodewords_solver/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/johansenja","download_url":"https://codeload.github.com/johansenja/codewords_solver/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241001390,"owners_count":19891984,"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":["codeword","codewords","crossword","cypher","ruby"],"created_at":"2024-11-11T19:13:29.909Z","updated_at":"2025-02-27T09:54:03.214Z","avatar_url":"https://github.com/johansenja.png","language":"Ruby","readme":"# Codewords solver\n\nA simple ruby-based allgorithm for solving codewords (AKA [Cypher crosswords](https://en.wikipedia.org/wiki/Crossword#Cipher_crosswords)) - popular in many newspapers.\n\n## Usage\n\n```ruby\nrequire \"codewords_solver\"\n\nCodewordsSolver.solve! coded_words: grid, starting_letters: { 5 =\u003e \"F\", 7 =\u003e \"L\" }\n```\nor\n```ruby\nrequire \"codewords_solver\"\n\nsolver = CodewordsSolver.new grid, { 5 =\u003e \"F\", 7 =\u003e \"L\" }\nsolver.solve!\n```\nwhere\n```ruby\ngrid = [\n  [1, 13, 7, 11],\n  [22, 5, 5, 13, 10, 17, 4, 15],\n  [4, 13, 18, 3, 23],\n  [16, 13, 7, 7, 13, 22, 26],\n  [15, 10, 4, 12, 24, 25, 7, 17],\n  [25, 13, 4, 22],\n  [12, 24, 22, 9, 26, 23],\n  [5, 13, 12, 26, 10, 17],\n  [17, 26, 21, 14],\n  [24, 12, 4, 23, 13, 12, 26, 15],\n  [19, 4, 22, 8, 17, 10, 23],\n  [4, 12, 13, 15, 17],\n  [11, 13, 15, 10, 22, 9, 26, 23],\n  [2, 9, 13, 19],\n  [1, 22, 4, 20, 15, 19, 12, 10, 17],\n  [19, 22, 11],\n  [7, 12, 18, 17, 4],\n  [22, 25, 21, 13, 22, 9, 15],\n  [15, 23, 12, 24, 13, 26, 12],\n  [7, 17, 18, 22],\n  [5, 13, 16, 16, 7, 17],\n  [23, 12, 4, 23, 12, 26],\n  [13, 11, 7, 17],\n  [24, 13, 6, 23, 9, 4, 17],\n  [17, 11, 13, 23, 13, 22, 26],\n  [12, 11, 13, 17, 9],\n  [15, 22, 26],\n  [22, 21, 17, 4, 15, 7, 17, 17, 19],\n]\n```\n\nwhich is a machine-representation of a real-world grid that looks like this:\n\n![IMG_2891](https://github.com/johansenja/codewords_solver/assets/43235608/27741a76-9a14-4dba-b25c-a59a89fcc51d)\n\n\n**Note that while a codewords puzzle is typically formed into a grid with intersecting words, you do not need to mark such intersections here. A simple array of each of the numbered words will suffice!**\n\n### Please note\n\nA good codewords solver requires a good word list, and this one is far from perfect. If it isn't\nsolving a puzzle or it's making a mistake, it's quite likely that it's because there are words\nmissing from the list!\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjohansenja%2Fcodewords_solver","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjohansenja%2Fcodewords_solver","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjohansenja%2Fcodewords_solver/lists"}