{"id":16759270,"url":"https://github.com/ncdulo/word_tools","last_synced_at":"2025-04-10T17:14:56.099Z","repository":{"id":43381732,"uuid":"247568659","full_name":"ncdulo/word_tools","owner":"ncdulo","description":"Utilities for performing actions on words, or collections of words.","archived":false,"fork":false,"pushed_at":"2022-12-08T03:54:42.000Z","size":115,"stargazers_count":5,"open_issues_count":9,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-22T10:17:49.662Z","etag":null,"topics":["cli","definitions","dictionary","python","python-module","python-package","python3","tools","urbandictionary","utilities","utility-library","words"],"latest_commit_sha":null,"homepage":null,"language":"Python","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/ncdulo.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-03-15T23:20:36.000Z","updated_at":"2024-05-15T12:56:16.000Z","dependencies_parsed_at":"2023-01-24T09:05:13.934Z","dependency_job_id":null,"html_url":"https://github.com/ncdulo/word_tools","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ncdulo%2Fword_tools","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ncdulo%2Fword_tools/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ncdulo%2Fword_tools/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ncdulo%2Fword_tools/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ncdulo","download_url":"https://codeload.github.com/ncdulo/word_tools/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248261916,"owners_count":21074225,"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","definitions","dictionary","python","python-module","python-package","python3","tools","urbandictionary","utilities","utility-library","words"],"created_at":"2024-10-13T04:07:45.099Z","updated_at":"2025-04-10T17:14:56.080Z","avatar_url":"https://github.com/ncdulo.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# word_tools\n[![PyPI version shields.io](https://img.shields.io/pypi/v/word_tools.svg)](https://pypi.python.org/pypi/word_tools/) [![PyPI status](https://img.shields.io/pypi/status/word_tools.svg)](https://pypi.python.org/pypi/word_tools/) [![Build Status](https://travis-ci.com/ncdulo/word_tools.svg?branch=master)](https://travis-ci.com/ncdulo/word_tools) [![codecov](https://codecov.io/gh/ncdulo/word_tools/branch/master/graph/badge.svg)](https://codecov.io/gh/ncdulo/word_tools) [![Percentage of issues still open](http://isitmaintained.com/badge/open/ncdulo/word_tools.svg)](http://isitmaintained.com/project/ncdulo/word_tools \"Percentage of issues still open\") [![PyPI pyversions](https://img.shields.io/pypi/pyversions/word_tools.svg)](https://pypi.python.org/pypi/word_tools/) [![Feature Request](https://img.shields.io/badge/feature%20requests-welcome-green.svg)](https://github.com/ncdulo/word_tools/issues/new/choose) [![made-with-vim](https://img.shields.io/badge/made%20with-Vim-1f425f.svg)](https://www.vim.org/)\n\nUtilities for performing actions on words, or collections of words. This is a\nslowly expanding library of functions, conversions, and lookups added to as I\nsee fit. Mostly intended for fun, or convenience. Not sure what it will grow\ninto, but it's a nice laid back project.\n\nWe are most in need of ideas for new providers! What can `word_tools` do for\n*you*?\n\nNote that many of the things in this repo, and in the code are a little out of\nproportion compared to what the code actually does. That is perfectly fine. I\nset up a lot of these extra features, simply to try them out. Having had an\ninterest in them for some time but never actually using them. Bringing us to\nbasically the same purpose behind this project. To expand my knowledge, and\ngrow further as a developer. Also, I just *really* like the badges.\n\n# Requirements\nDirect dependencies of this project are `requests`, `beautifulsoup4`, `click`,\n`pymediawiki`, and their dependencies. If installing through Pip, or\n`setup.py`, they will be installed automatically. A `requirements{,_dev}.txt`\nfiles have been included for a more exact listing of the full requirements,\nand their version numbers. However, there may be some issues with version\nnumbers on a couple packages that I have not fully worked out yet. The pip\nand `setup.py` installation should not encounter these version mismatches.\n\n# Installation \u0026 Use\nRecommended to install into a virtual environment of your desired flavor. I\ncurrently recommend `virtualenvwrapper`, but am using the stock `venv` module\nin the example below for simplicity. Save the user on configuring a dependency\nif they don't have to. If using another method to handle your venvs, modify\nthe below to suit.\n\n```bash\n# Clone the repo\ngit clone https://github.com/ncdulo/word_tools.git\ncd word_tools\n\n# Create a new virtual environment, and enable it\npython -m venv .env\nsource .env/bin/activate\n\n# Update Pip \u0026 friends. Optional, but recommended\npip install --upgrade pip\n\n# Install dependencies and create executable\npip install .\n# If you receive errors about \"No module named 'word_tools'\", try this\npip install --editable .\n\n# With venv active, the executable location will be included in your $PATH\n# Otherwise, the path to executable will be\n# .env/bin/wt\nwt [OPTIONS] PROVIDER WORD\nwt --help\nwt urbandictionary python --limit 2\nwt -l 2 wikipedia python\n\n# Deactivate the virtual environment when finished\ndeactivate\n```\n\n# Contributing\nContributions to `word_tools` are always very welcome, and very much\nappreciated. Thank you for the interest in helping out! There are a few\nguidelines that I try to follow when working on this project. Laid out in the\n[CONTRIBUTING.md](https://github.com/ncdulo/word_tools/blob/master/CONTRIBUTING.md)\nfile. I admit that I got a little carried away when writing it, and it looks\nfor worse than it actually is. Simply, they are just guidelines. I tried to\ninclude the relevant information to get a development environment set up,\na breakdown of the project structure, and some basic conventions for coding\nand submitting your content.\n\ntldr: If you are only submitting an issue of some sort, or a small change, you\nonly need look into the very first section of the\n[contributing guidelines](https://github.com/ncdulo/word_tools/blob/master/CONTRIBUTING.md).\n\n# Development Goals\nThis project does not have a strict end-game in sight. It's just something I\nhave been putting together during my free time, in sporadic bursts of interst.\nThere are some additions that I have in mind, but in general, it is very\nopen-ended. Some of these features, or things I would like to learn with this\nproject include:\n- [ ] Additional Providers\n  - [ ] Thesaurus Lookup.\n  - [ ] StackOverflow Search.\n  - [ ] GitHub Search.\n- [ ] Testing\n  - [ ] Integration tests.\n  - [ ] More testing specific to core classes (`GenericProvider`,\n  `ObjectFactory`, etc).\n  - [ ] Parametrize current tests. Eliminate some of those loops.\n  - [ ] Are fixtures applicable anywhere?\n- [ ] Command Line Interface\n  - [ ] Finalize argument specification.\n  - [ ] Tidy up, verbose-ify `--help` text.\n- [ ] Documentation\n  - [ ] Write API docs. Probably Sphinx.\n  - [ ] We're gonna need a `man` page too.\n  - [ ] Go all in with `readthedocs.io` support as well?\n\nIn the end, this is just something that I intend to grow over time. Trying\nout new things as I learn them. Or adding other features as I think them up,\nor find a need for them. So far, it's been a lot of fun, and I have had the\nopportunity to try many new things on my own. 10/10, would `wt` again.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fncdulo%2Fword_tools","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fncdulo%2Fword_tools","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fncdulo%2Fword_tools/lists"}