---
title: "#ruff articles | Hashnode"
description: "Explore 20 articles tagged #ruff on Hashnode. Tutorials, guides, and how-tos from the community."
url: "https://hashnode.com/tag/ruff"
---

Tag

# #ruff

20 posts · 0 followers

[spongeb0b](https://hashnode.com/@spongeb0b) · [Aug 26](https://hashnode.com/posts/duplicate-code-detection-for-ruff-users/6a8e696b345f80f6e33ee258)

### [Duplicate-Code Detection for Ruff Users](https://bobtaylor.hashnode.dev/duplicate-code-detection-for-ruff-users?utm_source=hashnode&utm_medium=feed)

Ruff can replace a remarkable amount of Python tooling. Duplicate-code detection is one of the gaps you may still need to fill.

12 min read · [bobtaylor.hashnode.dev](https://bobtaylor.hashnode.dev/duplicate-code-detection-for-ruff-users?utm_source=hashnode&utm_medium=feed)

[Ramesh Neupane](https://hashnode.com/@akakritagya) · [Aug 24](https://hashnode.com/posts/how-i-set-up-a-python-project-in-2026-uv-ruff-mypy-and-friends/6a8c324b559f08cfbe150f77)

### [How I Set Up a Python Project in 2026: uv, ruff, mypy and friends](https://akakritagya.hashnode.dev/how-i-set-up-a-python-project-in-2026-uv-ruff-mypy-and-friends?utm_source=hashnode&utm_medium=feed)

Set up a modern Python project with uv, Ruff, mypy, pytest, and pre-commit for fast installs, quality checks, and reliable tests.

12 min read · [akakritagya.hashnode.dev](https://akakritagya.hashnode.dev/how-i-set-up-a-python-project-in-2026-uv-ruff-mypy-and-friends?utm_source=hashnode&utm_medium=feed)

[2](https://hashnode.com/posts/how-i-set-up-a-python-project-in-2026-uv-ruff-mypy-and-friends/6a8c324b559f08cfbe150f77)

[Jeremy Longshore](https://hashnode.com/@jeremylongshore) · [Jul 1](https://hashnode.com/posts/ci-gap-shellcheck-ruff-caught-4-findings-mr1lv7ul/6a449e870414fd89b4462f00)

### [CI gap: shellcheck + ruff caught 4 findings](https://jeremylongshore.hashnode.dev/ci-gap-shellcheck-ruff-caught-4-findings-mr1lv7ul?utm_source=hashnode&utm_medium=feed)

The CI matrix ran lint-staged and the main workflow against TS/JS/JSON/MD/YAML. Good coverage there. But plugin/skills/\*\*/\*.{sh,py} — the shell and Python scripts inside plugin archetypes and skill sc

4 min read · [jeremylongshore.hashnode.dev](https://jeremylongshore.hashnode.dev/ci-gap-shellcheck-ruff-caught-4-findings-mr1lv7ul?utm_source=hashnode&utm_medium=feed)

[Kamal Mustafa](https://hashnode.com/@k4ml) · [Jun 26](https://hashnode.com/posts/git-blame-after-massive-code-formatting/6a3e28c65a0eed11a6114769)

### [Git blame after massive code formatting](https://grep.koditi.my/git-blame-after-massive-code-formatting?utm_source=hashnode&utm_medium=feed)

Running a massive, codebase-wide lint or format update using a tool like Ruff is incredibly satisfying for clean code, but it does come with a major side effect: it can completely wreck your git blame

3 min read · [grep.koditi.my](https://grep.koditi.my/git-blame-after-massive-code-formatting?utm_source=hashnode&utm_medium=feed)

[Jose Atlin](https://hashnode.com/@joseatlin) · [Jun 21](https://hashnode.com/posts/astral-toolchain-guide/6a381333bee907561ffb5493)

### [The Astral Toolchain: How Ruff, uv, and ty Replaced My Entire Python Setup](https://agentsinproduction.hashnode.dev/astral-toolchain-guide?utm_source=hashnode&utm_medium=feed)

Replace pip, black, isort, flake8, and mypy with three Rust-powered tools. Full setup guide with pyproject.toml, CI, Docker, and editor config.

25 min read · [agentsinproduction.hashnode.dev](https://agentsinproduction.hashnode.dev/astral-toolchain-guide?utm_source=hashnode&utm_medium=feed)

[1](https://hashnode.com/posts/astral-toolchain-guide/6a381333bee907561ffb5493)

[Marcos Alonso](https://hashnode.com/@marcosalonso) · [Mar 12](https://hashnode.com/posts/the-complete-python-code-quality-stack-in-2026-ruff-mypy/69b2b20031303b597cefd35c)

### [The Complete Python Code Quality Stack in 2026: Ruff + mypy](https://blog.marcosalonso.dev/the-complete-python-code-quality-stack-in-2026-ruff-mypy?utm_source=hashnode&utm_medium=feed)

Best Python Code Quality Stack (ruff and mypy) and how to configure them using uv or poetry in pyproject.toml. Integrate them in CI and VS Code.

26 min read · [blog.marcosalonso.dev](https://blog.marcosalonso.dev/the-complete-python-code-quality-stack-in-2026-ruff-mypy?utm_source=hashnode&utm_medium=feed)

[DevTools Guide](https://hashnode.com/@devtoolsguide) · [Mar 3](https://hashnode.com/posts/python-development-environment-package-managers-type-checking-and-linting/69a6566cebe870f92610ee7b)

### [Python Development Environment: Package Managers, Type Checking, and Linting](https://devtoolsguide.hashnode.dev/python-development-environment-package-managers-type-checking-and-linting?utm_source=hashnode&utm_medium=feed)

Python Development Environment: Package Managers, Type Checking, and Linting Python's development tooling has historically been fragmented and confusing. The good news: in 2026, the ecosystem has consolidated around better tools. Here's how to set up...

6 min read · [devtoolsguide.hashnode.dev](https://devtoolsguide.hashnode.dev/python-development-environment-package-managers-type-checking-and-linting?utm_source=hashnode&utm_medium=feed)

[DevTools Guide](https://hashnode.com/@devtoolsguide) · [Mar 3](https://hashnode.com/posts/ruff-the-python-linter-and-formatter-that-made-everything-else-obsolete/69a6566dd6ed70651a65ead2)

### [Ruff: The Python Linter and Formatter That Made Everything Else Obsolete](https://devtoolsguide.hashnode.dev/ruff-the-python-linter-and-formatter-that-made-everything-else-obsolete?utm_source=hashnode&utm_medium=feed)

Ruff: The Python Linter and Formatter That Made Everything Else Obsolete Ruff is a Python linter and formatter written in Rust. It replaces Flake8, Black, isort, pyupgrade, pydocstyle, and several other tools with a single binary that runs 10-100x fa...

7 min read · [devtoolsguide.hashnode.dev](https://devtoolsguide.hashnode.dev/ruff-the-python-linter-and-formatter-that-made-everything-else-obsolete?utm_source=hashnode&utm_medium=feed)

[Carlos Moreno](https://hashnode.com/@carlosmoreno) · [Dec 21, 2025](https://hashnode.com/posts/ruff-como-manter-seu-codigo-python-limpo-sem-perder-a-paciencia-e-o-tempo/6947f3fe17cb92a39c785e3b)

### [Ruff: Como manter seu código Python limpo sem perder a paciência (e o tempo)](https://carlosmoreno.hashnode.dev/ruff-como-manter-seu-codigo-python-limpo-sem-perder-a-paciencia-e-o-tempo?utm_source=hashnode&utm_medium=feed)

Se você está começando sua jornada como dev Python, já deve ter ouvido falar que “código limpo” não é apenas estética, é sobrevivência. Mas, para manter essa limpeza, muitas vezes precisamos configurar várias ferramentas auxiliares, tais como: Flake8...

5 min read · [carlosmoreno.hashnode.dev](https://carlosmoreno.hashnode.dev/ruff-como-manter-seu-codigo-python-limpo-sem-perder-a-paciencia-e-o-tempo?utm_source=hashnode&utm_medium=feed)

[Marcos Alonso](https://hashnode.com/@marcosalonso) · [Dec 14, 2025](https://hashnode.com/posts/perfect-python-environment-poetry/693f16eace1f0c0edc73d6d0)

### [Perfect Python Environment (Poetry)](https://blog.marcosalonso.dev/perfect-python-environment-poetry?utm_source=hashnode&utm_medium=feed)

Stop struggling with requirements.txt. Learn how to set up the perfect Python environment using Poetry for dependencies, combined with Ruff and Mypy.

6 min read · [blog.marcosalonso.dev](https://blog.marcosalonso.dev/perfect-python-environment-poetry?utm_source=hashnode&utm_medium=feed)
