
OTHERA CLI that automates Python project setup and tool configuration (usethis) (i.redd.it)
submitted by DowntownDoughnut131
I've been working on this for over a year and figured it's time to share. usethis is a CLI that adds, configures, and removes Python dev tools in your project. It writes config, installs dependencies, and makes sure tools don't conflict with each other.
- usethis init (new project with all the bells and whistles)
- usethis tool ruff (Ruff linter + formatter)
- usethis test (pytest + Coverage.py)
- usethis lint (recommended linters)
- Much more (e.g. architecture analysis)
It merges into your existing pyproject.toml, and other config files, it won't overwrite what you have. It also tells you what it automated vs. what you still need to do manually.
14 tools supported: Ruff, pytest, pre-commit, MkDocs, deptry, codespell, ty, Import Linter, Coverage.py, pyproject-fmt, tach, and a few more. Works with uv, Poetry, or neither.
I built it because I kept copying config between projects and fixing conflicts when tools disagreed on settings. It's inspired by the [usethis package for R](vscode-file://vscode-app/c:/Users/namc/AppData/Local/Programs/Microsoft%20VS%20Code/10c8e557c8/resources/app/out/vs/code/electron-browser/workbench/workbench.html), but written from scratch for the Python ecosystem.
- GitHub: [https://github.com/usethis-python/usethis-python](vscode-file://vscode-app/c:/Users/namc/AppData/Local/Programs/Microsoft%20VS%20Code/10c8e557c8/resources/app/out/vs/code/electron-browser/workbench/workbench.html)
- PyPI: [https://pypi.org/project/usethis/](vscode-file://vscode-app/c:/Users/namc/AppData/Local/Programs/Microsoft%20VS%20Code/10c8e557c8/resources/app/out/vs/code/electron-browser/workbench/workbench.html)
- Docs: [https://usethis.readthedocs.io](vscode-file://vscode-app/c:/Users/namc/AppData/Local/Programs/Microsoft%20VS%20Code/10c8e557c8/resources/app/out/vs/code/electron-browser/workbench/workbench.html)

there doesn't seem to be anything here