{"id":17166658,"url":"https://github.com/willf/wordniknik","last_synced_at":"2026-02-26T05:53:54.724Z","repository":{"id":256978346,"uuid":"856993995","full_name":"willf/wordniknik","owner":"willf","description":"A ruby wrapper for the Wordnik API","archived":false,"fork":false,"pushed_at":"2024-09-13T15:59:48.000Z","size":41,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-09-14T06:45:07.383Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/willf.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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,"publiccode":null,"codemeta":null}},"created_at":"2024-09-13T15:45:07.000Z","updated_at":"2024-09-13T15:59:52.000Z","dependencies_parsed_at":"2024-09-14T06:45:12.733Z","dependency_job_id":"b51633ff-4da5-4ad5-abe0-0d00f6c877aa","html_url":"https://github.com/willf/wordniknik","commit_stats":null,"previous_names":["willf/wordniknik"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/willf%2Fwordniknik","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/willf%2Fwordniknik/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/willf%2Fwordniknik/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/willf%2Fwordniknik/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/willf","download_url":"https://codeload.github.com/willf/wordniknik/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":219851405,"owners_count":16556244,"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":[],"created_at":"2024-10-14T23:06:17.999Z","updated_at":"2026-02-26T05:53:49.665Z","avatar_url":"https://github.com/willf.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Wordniknik\n\n[![Ruby badge](https://github.com/willf/wordniknik/actions/workflows/ruby.yml/badge.svg)](https://github.com/willf/wordniknik/actions/workflows/ruby.yml) [![Gem Version](https://badge.fury.io/rb/wordniknik.svg)](https://badge.fury.io/rb/wordniknik)\n\nA Ruby wrapper for the Wordnik API\n\n## Description\n\nThis is a Ruby wrapper for the Wordnik API. Wordnik is an online dictionary with\nan API for getting definitions, synonyms, antonyms, and more, as described it\n[developer.wordnik.com](https://developer.wordnik.com). This gem provides\nfunctions for the `word` and `words` endpoints of the API.\n\n## Installation\n\nTODO: Replace `wordniknik` with your gem name right after releasing it to RubyGems.org. Please do not do it earlier due to security reasons. Alternatively, replace this section with instructions to install your gem from git if you don't plan to release to RubyGems.org.\n\nInstall the gem and add to the application's Gemfile by executing:\n\n```bash\nbundle add wordniknik\n```\n\nIf bundler is not being used to manage dependencies, install the gem by executing:\n\n```bash\ngem install wordniknik\n```\n\n## Usage\n\nTo use the gem, you will need to sign up for a Wordnik API key at [developer.wordnik.com](https://developer.wordnik.com). Once you have your key, you can set it as an environment variable in your shell:\n\n```sh\nexport WORDNIK_API_KEY=your_api_key\n```\n\nor in a yaml file called `.wordnik.yml`.\n\n```yaml\nwordnik_api_key: your_api_key\n```\n\n## Example Standalone Usage\n\n```ruby\nrequire 'wordniknik'\nclient = Wordniknik::Client.new\nclient.definitions('ruby').each do |definition|\n  puts definition[:text]\nend\n```\n\n## Notes\n\nThis gem uses net/http to make requests to the Wordnik API. If you want to use a different\nHTTP library, you can supply a different `http_client` to the Wordniknik::Client constructor.\nFor example:\n\n```ruby\nrequire 'faraday'\nclient = Wordniknik::Client.new(http_client: Faraday.new('https://api.wordnik.com'))\n```\n\nThe original Wordnik gem was written in 2011; the last significant update was in 2013.\nAs a result, the original gem does not work well with the current Wordnik API.\n\nThis gem is a rewrite of the original gem, with a focus on the `word` and `words` endpoints,\nand with minimizing dependencies. The official Wordnik documentation of the API is\nat [developer.wordnik.com/docs](https://developer.wordnik.com/docs). Some of these\nendpoints no longer work, and some of the data can be difficult to work with.\n\nThis gem provides a way to get the data as the API provides it, without any additional\nclean up, but by default it will return results in a more useable format. All results\nreturned are returned as results from the API, interpreted as base Ruby objects. The\ndocumentation for the methods in the gem describe the parameters and return formats\nwith a focus on the cleaned up results. Certain parameters technically allowed by the\nAPI do not have an effect on the results returned by the API (in particular, the `useCanonical`\nparameter), and so are not included in the documentation. Functions that return\ndeprecation notices are not included in the gem (in particular, `reverseDictionary`\nand `search`).\n\nIn general the naming conventions of the methods in the gem use Ruby conventions, not\nthe conventions of the API. For example, the API uses `sourceDictionary` and `includePartOfSpeech`,\nwhile the gem uses `source_dictionary` and `include_part_of_speech`. Generally,\nsymbols are used for parameters and keys. For example, consider the following call:\n\n```ruby\nclient.definitions('erinaceous', limit:1)\n```\n\nThe results look like this (showing only keys with values):\n\n```ruby\n[{:attribution_text=\u003e\"from The Century Dictionary.\",\n  :source_dictionary=\u003e\"century\",\n  :text=\u003e\"Belonging to the hedgehog family; resembling a hedgehog.\",\n  :word=\u003e\"erinaceous\",\n  :attribution_url=\u003e\"https://www.wordnik.com/colophon#century/\",\n  :wordnik_url=\u003e\"https://www.wordnik.com/words/erinaceous\"\n}]\n```\n\n## Development\n\nAfter checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.\n\nTo install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and the created tag, and push the `.gem` file to [rubygems.org](https://rubygems.org).\n\n## Contributing\n\nBug reports and pull requests are welcome on GitHub at https://github.com/willf/wordniknik.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwillf%2Fwordniknik","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwillf%2Fwordniknik","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwillf%2Fwordniknik/lists"}