nowfound

Dev tools · alternatives · 2026

24 alternatives to Modshim – A new alternative to monkey-patching in Python

I've invented a new alternative to forking / vendoring / monkey-patching packages in Python. It's a bit like OverlayFS for Python modules - it allows you write modifications for a target module (lower) in a new module (upper), and have these combined in a new virtual module (mount). It works by rewriting imports using AST transformations, then running both the lower and upper module's code in the new Python module. This prevents polluting the global namespace when monkey-patching, and means if you want to make changes to a third-party package, you don't have to take on the…

Modshim is a Python development tool that provides an alternative to monkey-patching, forking, or vendoring packages. It works like OverlayFS for Python modules, allowing developers to write modifications in a separate… Below are 24 products that do a similar job, ranked by how close each is in meaning and then by launch-day votes.

  1. 1

    Hi HN, Jack here! I'm one of the creators of MonkeyPatch, an easy tool that helps you build LLM-powered functions and apps that get cheaper and faster the more you use them. For example, if you need to classify PDFs, extract product feedback from tweets, or auto-generate synthetic data, you can spin up an LLM-powered Python function in <5 minutes to power your application. Unlike existing LLM clients, these functions generate well-typed outputs with guardrails to mitigate unexpected behavior. After about 200-300 calls, these functions will begin to get cheaper and faster. We've seen 8-10x…

    2023 · github.com · its alternatives →

  2. 2

    A tool for refurbishing and modernizing Python codebases - dosisod/refurb

    2022 · github.com · its alternatives →

  3. 3

    Hi HN! We’re Asankhaya and Rohan and we are building Patchwork. Patchwork tackles development gruntwork—like reviews, docs, linting, and security fixes—through customizable, code-first 'patchflows' using LLMs and modular code management steps, all in Python. Here's a quick overview video: https:&#x2F;&#x2F;youtu.be&#x2F;MLyn6B3bFMU From our time building DevSecOps tools, we experienced first-hand the frustrations our users faced as they built complex delivery pipelines. Almost a third of developer time is spent on code management tasks[1], yet backlogs remain. Patchwork lets you combine…

    2024 · github.com · its alternatives →

  4. 4

    AST-based fragmental source code refactoring toolkit for Python - isidentical/refactor

    2021 · github.com · its alternatives →

  5. 5

    I built Copapy as an experiment: Can Python be used for hard real-time systems? Instead of an interpreter or JIT, Copapy builds a computation graph by tracing Python code and uses a custom copy-and-patch compiler. The result is very fast native code with no GC, no syscalls, and no memory allocations at runtime. The copy-and-patch compiler currently supports x86_64 as well as 32- and 64-bit ARM. It comes as small Python package with no other dependencies - no cross-compiler, nothing except Python. The current focus is on robotics and control systems in general. This project is early but…

    Feb 2026 · github.com · its alternatives →

  6. 6

    I wanted to see how fast an isolated code sandbox could start if I never had to boot a fresh VM. So instead of launching a new microVM per execution, I boot Firecracker once with Python and numpy already loaded, then snapshot the full VM state. Every execution after that creates a new KVM VM backed by a `MAP_PRIVATE` mapping of the snapshot memory, so Linux gives me copy-on-write pages automatically. That means each sandbox starts from an already-running Python process inside a real VM, runs the code, and exits. These are real KVM VMs, not containers: separate guest kernel, separate guest…

    Mar 2026 · github.com · its alternatives →

  7. 7

    Hi everyone, I built a runtime to isolate untrusted code using wasm sandboxes. Basically, it protects your host system from problems that untrusted code can cause. We’ve had a great discussion about sandboxing in Python lately that elaborates a bit more on the problem [1]. In TypeScript, wasm integration is even more natural thanks to the close proximity between both ecosystems. The core is built in Rust. On top of that, I use WASI 0.2 via wasmtime and the component model, along with custom SDKs that keep things as idiomatic as possible. For example, in Python we have a simple decorator:…

    Feb 2026 · github.com · its alternatives →

  8. 8

    Hello all, Very excited to share this project with you all! Panoptisch scans your Python file or module to find it's imports (aka dependencies) and recursively does so for all dependencies and sub-dependencies. It then generates a dependency tree in JSON for you to parse and enforce import policies. Supply chain attacks are no joke, and this is one way to transparently analyze your dependencies to see if any malicious imports are taking place. For example, your yaml parser, nor it's sub-dependencies should import socket, or sys. Panoptisch is in early stages, with known limitations (for…

    2022 · github.com · its alternatives →

  9. 9

    Turn any webpage into structured data using LLMs. Contribute to mishushakov/llm-scraper development by creating an account on GitHub.

    2024 · github.com · its alternatives →

  10. 10

    A monkeypatching library for python. Contribute to colinmarc/zodiac development by creating an account on GitHub.

    2012 · github.com · its alternatives →

  11. 11

    Hi all! A little background: I've been working on natto.dev, a spatial environment for JavaScript. I'm really excited about new interfaces for code (leveraging metaphors we're good at, spatial reasoning, making state visible, design tools, etc). With all the buzz around PyScript, I discovered Pyodide and got it working inside natto. This Python version is a stripped down version of https:&#x2F;&#x2F;natto.dev (eg interactive outputs, multiplayer) so please check that out if this interests you. I'm excited to share this spatial environment for Python. Imagine Jupyter cells arranged on a 2D…

    2022 · python.natto.dev · its alternatives →

  12. 12CA

    Hi HN, I’m here to show you a new codemod library. In case you’re not familiar with the term "codemod", here’s how it was originally defined AFAICT: > Codemod is a tool&#x2F;library to assist you with large-scale codebase refactors Codemods are awesome, but I felt they were far from their potential, and so I’m very proud to show you all an early version of a codemod library we’ve built called Codemodder (https:&#x2F;&#x2F;codemodder.io) that we think moves the "field" forward. Codemodder supports both Python and Java (https:&#x2F;&#x2F;github.com&#x2F;pixee&#x2F;codemodder-python and…

    2024 · codemodder.io · its alternatives →

  13. 13

    Hi HN! I’m Syrus, from the Wasmer team. We just released the new version of WAPM that is an order of magnitude better than the previous one (that we also announced here in HN two years ago! [0]), enabling an incredible experience for using and publishing WebAssembly packages. The tech stack that we are using includes: * Python and Django (for the backend) with Graphene (for the open GraphQL API [1]) and Django Channels with websockets over GraphQL [2] for subscriptions * Next.js [3] with React-Relay [4] and Tailwind.css [5] for the frontend * WebAssembly and Wasmer [6] (for the online shell)…

    2022 · wapm.io · its alternatives →

  14. 14

    Contribute to tylerhou/fiber development by creating an account on GitHub.

    2021 · github.com · its alternatives →

  15. 15

    I started building a couple of years ago because I found no easy existing solution to build Slack bots that can be composed from&#x2F;organized into plugins. Existing libraries like Bolt make it pretty easy to develop Slack bots, but hard to organize and scale the code base of your bot. I was also missing some crucial features such as scheduling actions for your bot. So I wrote my own framework! I recently rewrote the complete framework to make use of asyncio and the newest Slack SDK Let me know what you think!

    2022 · github.com · its alternatives →

  16. 16

    Hi HN! I built Oxyde because I was tired of duplicating my models. If you use FastAPI, you know the drill. You define Pydantic models for your API, then define separate ORM models for your database, then write converters between them. SQLModel tries to fix this but it's still SQLAlchemy underneath. Tortoise gives you a nice Django-style API but its own model system. Django ORM is great but welded to the framework. I wanted something simple: your Pydantic model IS your database model. One class, full validation on input and output, native type hints, zero duplication. The query API is…

    Mar 2026 · github.com · its alternatives →

  17. 17

    Hi HN, I'm Narek. I built Manim-Web, a TypeScript&#x2F;JavaScript port of 3Blue1Brown’s popular Manim math animation engine. The Problem: Like many here, I love Manim's visual style. But setting it up locally is notoriously painful - it requires Python, FFmpeg, Cairo, and a full LaTeX distribution. It creates a massive barrier to entry, especially for students or people who just want to quickly visualize a concept. The Solution: I wanted to make it zero-setup, so I ported the engine to TypeScript. Manim-Web runs entirely client-side in the browser. No Python, no servers, no install. It runs…

    Feb 2026 · github.com · its alternatives →

  18. 18

    Robyn is a Super Fast Async Python Web Framework with a Rust runtime. - sparckles/Robyn

    2023 · github.com · its alternatives →

  19. 19AC

    I think that asdf (https:&#x2F;&#x2F;asdf-vm.com) was a great idea for a project. It helps consolidate installing and running different programming languages into a similar UX. It also is built with a plugin interface that makes it easy to build support for new languages. However it is so slow. I was just testing `node -v` and it was taking ~900ms. That kind of overhead is completely unusable. My shell prompt uses runtimes inside of it for various things so this effectively makes every command take multiple seconds to complete. So I rebuilt it in Rust but using the same plugin ecosystem so…

    2023 · its alternatives →

  20. 20

    Hi HN! We are excited to show you modguard - a Python tool we built to enforce a modular, decoupled package architecture. We built modguard to solve a recurring problem that we've experienced on software teams - code sprawl. Over time, cross-module imports would tightly couple together what used to be independent domains, and eventually create "balls of mud". This made it harder to test, and harder to make changes. Mis-use of modules which were intended to be private would then degrade performance and even cause security incidents. This would happen for a variety of reasons: - Junior…

    2024 · github.com · its alternatives →

  21. 21

    PyTermGUI is a highly modular framework offering most of the features one would expect from a GUI library, such as a mature and open Widget API, animations, mouse support and other goodies, right inside the terminal! The markup language is another great feature of the library, and is used by practically all elements of it. It is based on Rich's implementation, but uses a more concise and easier to humanly parse syntax, while being over 10 times faster at parsing due to a long list of optimizations. There is a full Window Manager API included as well, allowing the user to move, resize and…

    2022 · github.com · its alternatives →

  22. 22

    Using wasm-bindgen, and the tween-rs crate

    2024 · rustween.mtassoumt.uk · its alternatives →

  23. 23

    I kept seeing every npm&#x2F;pnpm&#x2F;yarn&#x2F;bun&#x2F;uv supply chain post end with the same advice (set a minimum release age, turn off install scripts), and while I know cooldowns are "controversial", they do work. But even if you convince people that they should set cooldowns, it seems many don't end up following through, not sure why, maybe because it means hand-editing five config files in five formats with five different time units, or perhaps the "it won't happen to me" syndrome (or "I'll do it later, it seems complicated" where it's actually very simple). So I created a tool that…

    Jun 2026 · github.com · its alternatives →

  24. 24

    G'day, HN! I'm one of the maintainers of `llm`. I've been working alongside a trusty group of contributors to bring this project to life, and we're now at a point where we're ready to share it with the world. Large language models (LLMs) are taking the computing world by storm due to their emergent abilities that allow them to perform a wide variety of tasks, including translation, summarization, code generation, and even some degree of reasoning. However, the ecosystem around LLMs is still in its infancy, and it can be difficult to get started with these models. `llm` is a one-stop shop for…

    2023 · github.com · its alternatives →

Also compare

Ranked by how close each launch is in meaning, then by votes. Prices were read from each product’s own site when checked and can change. Refine with your own description →