RSSAmplifier

Blog

Python posts by Audrey M. Roy Greenfeld

audrey.feldroy.comRSS feed ↗15 posts

Latest posts

Staticware 0.2.0: The first cut

This is an early release. Staticware does something very satisfyingly today: it serves static files with content-hashed URLs for cache busting. That means when you edit your CSS then redeploy and restart your server, visitors get the latest CSS without forcing a refresh. More will come.

BinaryOrNot 0.6.0: Three Layers of Detection

BinaryOrNot identifies binary files three ways: by extension, by file signature, and by content analysis. Pass it any file path and it tells you binary or text, accurately, across PNGs, PDFs, executables, archives, fonts, CJK-encoded text, and hundreds of other formats.

BinaryOrNot 0.5.0: Zero Dependencies, 128 Bytes, One Trained Classifier

If you've ever had BinaryOrNot misidentify a UTF-16 file, choke on a CJK-encoded document, or crash because chardet changed its API, this release is for you.

Cookiecutter 2.7.1: The One Where It Knows Its Own Name

You know that thing where you release an album, it's on the shelves, people are buying it, and then someone points out the spine says it's your previous album? That's what happened with Cookiecutter 2.7.0. We put out the long-awaited release with 27 improvements and 17 contributors, and cookiecutter -V proudly announced: **2.6.0**.

Cookiecutter 2.7.0: Python 3.14, a Security Trust Model, and Verified Releases

Cookiecutter 2.7.0 is tested on Python 3.10 through 3.14, ships with a security policy documenting the trust model for template hook scripts, and publishes to PyPI with cryptographic provenance so you can verify every release. Seventeen contributors from the community helped build it.

Kalinga Means Care: Air ❤️ PythonAsia 2026

Air Web Framework exists not just because we created it, but because of the support we got soft-launching it at Python Philippines and running its first sprint at PyCon Davao. Now, Air is a PythonAsia 2026 community partner.

Cookiecutter PyPackage v0.4.0: Everything a Modern Python Package Needs

I've put out the biggest release of cookiecutter-pypackage since the modern rewrite. Generated projects now ship with a documentation site, type checking, cross-version coverage enforcement, and security-hardened CI, all configured and working out of the box.

Adopting Idiomatic PyTest: A Code Review

We recently reviewed a pull request from contributor Martin Saizar that refactored our Python tests. The goal was to enable the PyTest (PT) linter rule in Ruff, our code formatter and linter.

Introducing AirDragon: A Component Library Born on an Airplane

On a recent flight from Japan to the Philippines, Pydanny and I started coding a new project. The result is **AirDragon**, a layout and component library for the Air web framework.

The First Air Sprint

I co-led the first ever Air web framework sprint in Davao, Philippines, as part of Day 2 of PyCon Davao on October 26, 2025.

Python Tricks You Can't Live Without

Slides from my keynote at PyCon Davao 2025, the first regional Filipino conference for Python programming enthusiasts.

Introducing Air: A Pioneering AI-First Python Web Framework

Air is a pioneering AI-first Python web framework that represents the next evolution in web frameworks to be deeply AI-native.

Run Any Python CLI Instantly — No Install, No Virtualenv (uvx)

If you need to run Python applications from PyPI without installing them permanently, uvx provides a convenient way to execute Python tools without having to manage dependencies manually.

JSON to SQLite With sqlite-utils

How to get JSON into a local SQLite database fast.

Semantic Search With Sentence Transformers and a Cross-Encoder Model

Continuing the Sentence Transformers exploration, I use a cross-encoder model to rank my notebooks by similarity to search queries.