{"id":17067750,"url":"https://github.com/rican7/define","last_synced_at":"2025-04-05T02:13:00.257Z","repository":{"id":57485364,"uuid":"125136452","full_name":"Rican7/define","owner":"Rican7","description":"A command-line dictionary (thesaurus) app, with access to multiple sources, written in Go.","archived":false,"fork":false,"pushed_at":"2024-03-06T05:38:33.000Z","size":219,"stargazers_count":381,"open_issues_count":6,"forks_count":12,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-03-29T01:09:58.258Z","etag":null,"topics":["app","cli","command-line","command-line-tool","dictionary","go","golang","language","thesaurus"],"latest_commit_sha":null,"homepage":"","language":"Go","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/Rican7.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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":"2018-03-14T01:20:50.000Z","updated_at":"2025-02-24T12:48:44.000Z","dependencies_parsed_at":"2022-09-02T00:02:33.062Z","dependency_job_id":"eac5dba4-9545-400b-b32c-f15872869567","html_url":"https://github.com/Rican7/define","commit_stats":{"total_commits":172,"total_committers":5,"mean_commits":34.4,"dds":"0.046511627906976716","last_synced_commit":"f9ef064af364c1c6755d1b6689aae98e5ae2bf0a"},"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rican7%2Fdefine","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rican7%2Fdefine/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rican7%2Fdefine/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rican7%2Fdefine/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Rican7","download_url":"https://codeload.github.com/Rican7/define/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247276189,"owners_count":20912288,"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":["app","cli","command-line","command-line-tool","dictionary","go","golang","language","thesaurus"],"created_at":"2024-10-14T11:11:33.329Z","updated_at":"2025-04-05T02:13:00.235Z","avatar_url":"https://github.com/Rican7.png","language":"Go","readme":"# define\n\n[![Build Status](https://github.com/Rican7/define/actions/workflows/main.yml/badge.svg?branch=master)](https://github.com/Rican7/define/actions/workflows/main.yml)\n[![Go Report Card](https://goreportcard.com/badge/github.com/Rican7/define)](https://goreportcard.com/report/github.com/Rican7/define)\n[![Latest Stable Version](https://img.shields.io/github/release/Rican7/define.svg?style=flat)](https://github.com/Rican7/define/releases)\n\nA command-line dictionary (thesaurus) app, with access to multiple sources, written in Go.\n\n\u003cp align=\"center\"\u003e\n    \u003cimg width=\"822\" alt=\"screen shot 2018-03-21 at 8 51 54 pm\" src=\"https://user-images.githubusercontent.com/742384/37749239-b1b2804e-2d4c-11e8-9e20-f14d1431bbaf.png\"\u003e\n\u003c/p\u003e\n\n\n## Install\n\nPre-compiled binaries are available on the [releases](https://github.com/Rican7/define/releases) page.\n\nIf you have a working Go environment, you can install via `go install`:\n\n```shell\ngo install github.com/Rican7/define@latest\n```\n\n\n## Configuration\n\nThe **define** app allows configuration through multiple means. You can either set configuration via:\n\n1. Command line flags (good for one-off use)\n2. Environment variables (good for API keys)\n3. A configuration file (good for your \"dotfiles\")\n\nWhen multiple means of configuration are used, the values will take precedence in the aforementioned priority.\n\n\n### Command line flags\n\nThe list of command line flags is easily discovered via the `--help` flag. Any passed command line flag will take precedence over any other configuration mechanism.\n\n### Environment variables\n\nSome configuration values can also be specified via environment variables. This is especially useful for API keys of different sources.\n\nThe following environment variables are read by **define**'s sources:\n\n- `MERRIAM_WEBSTER_DICTIONARY_APP_KEY`\n- `OXFORD_DICTIONARY_APP_ID`\n- `OXFORD_DICTIONARY_APP_KEY`\n\n### Configuration file\n\nA configuration file can be stored that **define** will automatically load the values from.\n\nThe path of the configuration file to load can be specified via the `--config-file` flag. If no config file path is specified, **define** will search for a config file in your OS's standard config directory paths. While these paths are OS-specific, there are two locations that are searched for that are shared among all platforms:\n\n1. `$XDG_CONFIG_HOME/define/config.json` (This is only searched for when the `$XDG_CONFIG_HOME` env variable is set)\n2. `~/.define.conf.json` (Where `~` is equal to your `$HOME` or user directory for your OS)\n\nTo see which config file has been loaded, and to check what paths are searched for config files, use the `--debug-config` flag.\n\nTo print the default values of the configuration, simply use the `--print-config` flag. This can also be used to initialize a configuration file, for example:\n\n```shell\ndefine --print-config \u003e ~/.define.conf.json\n```\n\n\n## Sources\n\nThe **define** app has access to multiple sources, however some of them require user-specific API keys, due to usage limitations.\n\nA preferred source can be specified with the command line flag `--preferred-source=\"...\"` or in a configuration file. For more information, see the section on [Configuration](#configuration).\n\n### Obtaining API keys\n\nThe following are links to register for API keys for the different sources:\n\n- [Merriam-Webster's Dictionary API](https://www.dictionaryapi.com/register/index.htm)\n- [Oxford Dictionaries API](https://developer.oxforddictionaries.com/?tag=#plans)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frican7%2Fdefine","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frican7%2Fdefine","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frican7%2Fdefine/lists"}