SShortSingh.

Programming

0
ProgrammingDEV Community ·

Dokwise Processes PDFs Entirely In-Browser, With CSP to Prove No Data Leaves

A developer has built Dokwise, a free browser-based toolkit offering 16 PDF and image processing tools — including merge, split, OCR, compress, and e-signature — that require no account and no server. All file processing runs locally using JavaScript libraries such as pdf-lib, tesseract.js, and native browser APIs, meaning files never leave the user's device. The site enforces a strict Content Security Policy (CSP) that blocks any network requests to unlisted hosts, preventing both first-party and third-party code from silently transmitting data. The developer acknowledged that tesseract.js originally fetched worker and language files from an external CDN, which was resolved by bundling all assets locally. The only external connections permitted are to Google Analytics for anonymous page-view tracking, which is disclosed in the site's privacy policy and visible in the CSP header.

0
ProgrammingDEV Community ·

VirgoFash: A Zero-Dependency Async Python Library for Search and RAG Pipelines

Developer Abdullah Jahangir has released VirgoFash, a lightweight, asynchronous search and retrieval-augmented generation (RAG) engine written in pure Python. The library was created to address the common trade-off between heavy scraping frameworks and brittle custom HTTP code in AI application development. VirgoFash relies only on asyncio and httpx, avoiding dependencies like Selenium or Playwright, which keeps environments lean and install times fast. It features deterministic relevance scoring for consistent pipeline behavior and is designed to integrate easily with async backends such as FastAPI. The library is available on PyPI and GitHub, and can be combined with Anthropic's Claude API to build AI-powered search assistants with minimal code.

0
ProgrammingDEV Community ·

Developer Uses Claude AI to Automate Flutter Regression Tests Overnight

A Vietnamese mobile developer at an outsourcing firm built an automated regression testing suite for a Flutter app after noticing that AI-assisted 'vibe coding' was overwhelming the QA team with each new release. Using Maestro's MCP and CLI tools, the developer prompted Claude agents to loop through existing QA test cases, explore the app's codebase, and generate corresponding Maestro test flows autonomously. The process took roughly one month of weekend sessions, consuming available AI tokens to map UI components and build test coverage for each feature. The resulting system now lets the team run full regression checks after any coding sprint, with agents also monitoring app performance via logs during test runs. The developer acknowledged the approach is not entirely novel but shared it to help other app and web teams reduce manual code review burdens, while noting that security and environment configurations still require human oversight.

0
ProgrammingDEV Community ·

How Laravel Apps Can Survive Redis Outages Using Circuit Breaker Pattern

A Redis cache outage caused a Laravel application to crash with 500 errors during a server migration, exposing how the framework assumes cache availability by default. A basic try-catch workaround can prevent crashes but still forces requests to wait for Redis connection timeouts, adding noticeable latency. The Circuit Breaker pattern offers a cleaner solution by tracking failure rates and automatically bypassing the cache once a failure threshold is reached, routing requests directly to the database instead. The open-source PHP library Ganesha, using an APCu adapter to avoid circular dependency, can implement this pattern without custom logic. After a cooldown period, the circuit enters a half-open state to test Redis recovery before resuming normal cache operations.

0
ProgrammingDEV Community ·

Developer Ditches autofs for fstab to Fix Samba Race Condition on Raspberry Pi

A developer running a Samba-based home network storage server on a Raspberry Pi 4B with Fedora Server 38 encountered a recurring path error that prevented the shared drive from being accessed. The root cause was a race condition where the Samba service started before autofs could finish unlocking and mounting the BTRFS-formatted, passphrase-encrypted external drive. The original autofs and crypttab setup had worked reliably for weeks before this timing conflict surfaced. Switching to fstab — a built-in Linux utility — resolved the issue by ensuring the encrypted drive is fully mounted at boot time, before Samba initialises. The fix required removing the autofs configuration and adding a dedicated entry in fstab to handle both decryption and mounting automatically.

0
ProgrammingDEV Community ·

How to Run Uptime Kuma on Fedora Using Podman Quadlet and systemd

A developer set up Uptime Kuma, an open-source monitoring tool, on a Fedora mini-server to track work services and receive Slack alerts during outages. The setup used Podman Quadlet, a method of managing containers through declarative YAML files that automatically generate systemd services, ensuring apps start on boot. SELinux permissions were configured manually using chcon to allow the container write access to local storage, since Fedora enforces strict security policies. A Kubernetes-style YAML file defined the pod and container, while a .kube Quadlet file instructed systemd to manage the deployment automatically. Lingering was enabled via loginctl so the service continues running on the server even without an active user session.

0
ProgrammingDEV Community ·

How faketime Lets Developers Test Scheduled Jobs Without Changing System Clock

A developer investigating a defect in scheduled export jobs turned to a tool called faketime to simulate different dates inside a container without altering the actual system time. Faketime works by intercepting system calls related to date and time, letting programs run as though it were a different moment entirely. The approach required confirming the faketime library was present in the container image, then invoking it via environment variables like LD_PRELOAD and FAKETIME alongside the target command. By adjusting the date string passed to FAKETIME, the developer could replicate daily, monthly, and yearly export scenarios with minimal effort. The technique proved to be a practical and flexible solution for testing time-dependent scheduled tasks in containerized environments.

0
ProgrammingDEV Community ·

Linux Trick: Suspend, Background, and Disown a Running Process Without nohup

A developer running long scripts on a mini-server for a media-crawling hobby project needed a way to push already-started processes into the background without restarting them. Instead of relying on the usual nohup or tmux tools, they rediscovered a lesser-known Linux shell technique. The method involves pressing CTRL+Z to suspend a running process, typing 'bg' to resume it in the background, and then using 'disown -h %1' to detach it from the current shell session. Unlike nohup, which must be invoked before a process starts, this approach works on processes that are already running. The author notes it is particularly handy on servers where tmux is unavailable and cannot be installed.

0
ProgrammingDEV Community ·

PostgreSQL Generated Columns vs Triggers: When to Use Each for Derived Data

In PostgreSQL, derived column values can be maintained either through generated columns or triggers, and the right choice depends on what data the value needs to access. Generated columns work best when the value depends only on other columns in the same row using immutable functions, as the database enforces correctness and blocks manual overwrites. Triggers are necessary when the derived value requires data from other tables, the current timestamp, or non-immutable functions. Performance testing on PostgreSQL 18 showed that a row-level PL/pgSQL trigger added roughly 72% overhead to bulk inserts compared to a plain table, while a stored generated column added about 16% and a virtual generated column added none. Beyond performance, generated columns also improve schema clarity since their logic is visible directly in the table definition, unlike trigger-maintained columns which appear as ordinary writable columns.

0
ProgrammingHacker News ·

Developer Launches Trail, a New Browser-Based Logic Puzzle Game

A developer has released Trail, a new logic game available to play online. The project was shared on Hacker News under the 'Show HN' category, which highlights community-built projects. The game is hosted at trail.franzai.com and appears to be an independent creation. At the time of posting, it had received 6 points and 1 comment on Hacker News. Further details about the game's mechanics were not provided in the submission.

0
ProgrammingDEV Community ·

Prometiam API Offers Single-Call Access to Irish CRO Company Data

Developer and Prometiam founder Matías Maquieira has introduced a REST API that serves Ireland's Companies Registration Office register as JSON in a single call. The API draws from the CRO Open Data Portal, which is licensed under CC BY 4.0, and supports search by company name or CRO number. Each record includes the legal name, company number, legal form, status, registered address, Eircode, and key filing dates such as last annual return and next accounts due. The tool is positioned as a lightweight alternative to scraping the CRO website or subscribing to enterprise KYB platforms. A free 14-day trial offering 1,000 API calls without requiring a credit card is available at prometiam.com, though the API does not include directors, officers, or beneficial ownership data.

0
ProgrammingDEV Community ·

Developer Builds Seven-Workflow AI Content Pipeline for Online Casino Platform

A developer has built a fully automated content production pipeline for an iGaming platform using n8n as the orchestration layer, integrating Google Gemini, Anthropic Claude, and Vertex AI for content generation. The system handles everything from scraping casino websites via Scrapfly and storing data in Google Cloud Storage, to generating multilingual reviews, game descriptions, and player-facing copy. Six of the seven workflows serve as editorial tools operated by content managers through simple forms, while the seventh acts as a developer testing harness for layout and API validation. Content is processed through a RAG engine built on Vertex AI before being assembled, translated, quality-checked, and published as Lexical JSON into a Payload CMS running on Next.js. The pipeline was designed to solve the scaling challenge of keeping thousands of game listings and multilingual descriptions continuously updated without manual effort.

0
ProgrammingDEV Community ·

Developer Releases Rexo Code, an Open-Source AI Coding Agent Built in Rust

A developer has publicly released Rexo Code v0.9, an open-source AI coding agent written in Rust that runs entirely in the terminal. The tool is designed to be provider-agnostic, allowing users to select their preferred AI model or provider rather than being locked into a single service. Rexo Code can navigate and understand project codebases, execute commands, and iterate on changes while requiring user-approved permissions to prevent unsanctioned actions. The project supports Windows, Linux, and macOS, and evolved from a personal experiment into a full open-source release after extensive testing and architectural iteration. The source code is freely available on GitHub, and the developer is inviting feedback from other engineers working with AI coding workflows.

0
ProgrammingDEV Community ·

Qodo, CodeRabbit, and Cubic Compared: Which AI Code Review Tool Enforces Rules?

A comparative analysis of three AI-powered code review tools — Qodo, CodeRabbit, and Cubic — was published on DEV Community on September 24. The piece examines a key distinction between tools that merely suggest code improvements and those that actively enforce coding rules. The author, Anthony Max, evaluated each platform across dimensions relevant to web developers and programmers. The article, tagged under AI, web development, and open source, garnered 86 reactions and drew notable community engagement within the developer community.

0
ProgrammingDEV Community ·

Developer Builds Browser-Only Payroll Calculator Covering All 50 U.S. States

A developer has created PayCalc, a client-side payroll calculator built with Next.js that performs complete U.S. payroll computations entirely within the browser, sending no financial data to external servers. The tool covers all 51 U.S. jurisdictions and incorporates 2026 IRS federal tax brackets, FICA caps, and state-specific tax codes. Calculations execute in under 5 milliseconds by running pure TypeScript logic locally, eliminating the server round-trips common in most online paycheck tools. The application also supports reverse Net-to-Gross calculation using a binary search algorithm that converges on the correct gross figure in 12 to 15 iterations. Dynamic OpenGraph social cards are generated at the edge for each state page, displaying jurisdiction-specific tax statistics when links are shared on social platforms.

0
ProgrammingDEV Community ·

MCP Server Cuts macOS AI Automation Time by 45% and Cost by 85%

A developer built an MCP server called beans-picker on top of the cua-driver macOS automation tool to make AI-driven UI tasks faster and cheaper. In benchmark tests, tasks completed in a median of 28.1 seconds at $0.060, compared to 49.7 seconds and $0.388 using cua-driver alone — a 1.8x speed gain and 85% cost reduction. The key insight was replacing full accessibility-tree reads with a short list of candidate actions, which a lightweight model called Jev uses to pick the correct UI element. This approach dramatically reduces token usage, with cua-driver-only runs consuming a median of 646,000 Claude tokens per task. Throughout the process, the target app remains in the background, allowing users to continue working on their Mac uninterrupted.

0
ProgrammingDEV Community ·

WordPress Click2Shell Flaw Exposes RCE Risk Across Millions of Sites

A vulnerability dubbed Click2Shell, disclosed on September 21, 2026, revealed an unauthenticated remote code execution chain in WordPress Core that tricks a logged-in administrator into visiting a crafted URL, which then silently installs a malicious theme and executes attacker-controlled PHP. WordPress addressed the flaw in version 7.1.1 via changeset 63664, though no CVE has been assigned and no active exploitation in the wild has been reported. A ZoomEye query run on September 22, 2026 returned nearly 7.95 million WordPress assets globally, though researchers caution this figure represents exposure scope, not confirmed compromised hosts. The attack has two layers: a core parser flaw affecting all versions before 7.1.1, and a secondary stage exploiting unprotected AJAX endpoints found in over 40 catalog themes, including Mobile Repair Zone 2.5.4. Because the chain depends on social engineering an administrator to click a link, site owners are urged to patch to 7.1.1 and audit installed themes rather than treat the asset count as a breach tally.

0
ProgrammingDEV Community ·

Developer builds script to verify all 8,556 PDF links in 871-page digital planner

A software developer created a Python-generated 871-page hyperlinked PDF planner containing 8,556 internal link annotations spanning daily, weekly, and monthly pages. To ensure quality, they wrote a verification script using pypdf that checks every link annotation, resolves its destination, and flags anything broken or out of bounds. Beyond basic link resolution, the script performs semantic checks — confirming, for example, that a calendar cell for March 14 actually lands on the correct page — and walks the full 105-week prev/next chain to catch year-boundary off-by-one errors. The shipped build passed with zero broken links out of 8,556 checked, though the script proved its value earlier in development by catching bugs caused by page insertions that silently remapped link destinations. The developer notes that on-device testing in apps like GoodNotes and Notability remains an outstanding gap not covered by the automated checks.

0
ProgrammingDEV Community ·

Missing description strings silently hide AI agent handlers from tool manifests

A development team discovered that their in-app AI agent could not access dozens of existing handlers because each lacked a required description string in its definition. Without that string, handlers are excluded from the manifest the agent receives, making them effectively invisible regardless of whether the underlying code works. Twenty-one handlers across the team's AI pipeline and prompt store features were affected, all functioning normally for human users but unreachable by the agent. The team also implemented a two-tier risk system, marking irreversible actions like hard deletes and free-text prompt edits as high-risk to prevent the agent from being granted permanent approval for those calls. Automated gap tests were added to each feature to catch undocumented handlers before they ship, since silent omissions produced no errors and were difficult to diagnose.

← NewerPage 877 of 3177Older →