Blog Posts
Django PDF Form Overlay: Production Guide
Overlay Django model data on government PDF forms The Challenge Fill official OCDD government forms (OCDDProgressNoteSingleShiftNotFillable021225.pdf) with Django ProgressNoteEntry data: Overlay on real PDF template (not HTML recreation) Works on NixOS dev + Ubuntu Apache2/uWSGI prod No WeasyPrint (GTK/Pango nightmare on NixOS) Visual coordinate tweaking (no parsing tools) Graceful empty...
Django Development Stack
Project: My Django E-commerce Platform Workflow Definition Goal The goal of this prompt is to establish a clear, end-to-end development and deployment workflow for a Django project using a modern, declarative toolchain. The workflow must cover local development environment setup, code quality checks, testing, and deployment automation to a live...
Setting Up a Private, Cross-Distro Sync: Ubuntu to OpenSUSE with Syncthing
Introduction As Linux users working across different physical locations, relying on proprietary cloud services for synchronizing development environments isn't always ideal for speed, privacy, or control. This post details how we implemented a self-hosted, open-source file synchronization system using Syncthing to keep our WorkArea folders instantly updated between different Linux...
Mastering Communication with AI: A Guide to Effective Prompt Engineering
Introduction Interacting with AI tools like this requires a specific skill set often referred to as prompt engineering. This involves learning the nuances, constraints, and effective strategies for framing requests to get reliable, complete outputs. Our journey through creating a blog post about Syncthing synchronization highlighted several key lessons in...
Migrating to a Modern Django Workflow: UV, Ruff, and CD
Introduction We recently undertook a significant migration across our five Django projects to streamline development, improve code quality, and automate deployments. This process involved adopting several modern Python tools and updating our operational practices. Key Migrations & Best Practices Implemented 1. From Pip to UV (The Speed Upgrade) We replaced...
Choosing the Right Tools: A Modern Django Stack for CMS, E-commerce, and CRM
Choosing the Right Tools: A Modern Django Stack for CMS, E-commerce, and CRM Building a suite of five interconnected, monetized websites requires a careful selection of robust, complementary tools. We’ve consolidated our technology preferences—focusing on avoiding manual JavaScript, leveraging utility-first CSS, and ensuring reliable backend automation—into a single, powerful architecture....
Debugging the GitHub Feed: Celery, Redis, and the Elusive 401 Error
Debugging the GitHub Feed: Celery, Redis, and the Elusive 401 Error When setting up the github_feed application locally for the first time, several friction points emerged related to environment configuration, pathing, and authentication. The primary issue preventing the feed from working was a consistent 401 Client Error: Unauthorized. Here are...
Streamlining Django Deployments: Building a Reusable Project Manager Script
Automating Django Deployments: A Reusable Shell Script Managing multiple Django projects on a single server can quickly become complex, especially when coordinating code pulls, migrations, static file collection, and service restarts (like uWSGI, Celery, and Apache/Nginx). Manual execution is error-prone and time-consuming. The solution is a robust, reusable shell script...
Bringing Dev Activity to Life: Building a Dynamic GitHub Feed in Django with Celery
Introduction Every developer wants to show off their recent work, but manually updating a "recent projects" list is tedious. We wanted a live feed of our GitHub commits directly on makeitexist.net. The challenge? Fetching data from an external API (like GitHub's) live on every page load can slow down your...