Category: Development

Manifest: A 1-File Micro-Backend for Simplified Development

2025-03-21
Manifest: A 1-File Micro-Backend for Simplified Development

Manifest is a lightweight, single-file micro-backend framework designed to streamline development for 80% of websites and apps needing only basic backend features. It provides essential functionalities like authentication, validation, storage, image resizing, admin panel, dynamic endpoints, REST API, JS SDK, and webhooks. Ideal for rapid prototyping, microservices, CRUD-heavy apps, and headless CMS, Manifest is currently in beta and suitable for small projects and MVPs, but not recommended for critical platforms.

Calibre 8.0 Released: Enhanced Kobo Support and More

2025-03-21

Calibre 8.0 is here, boasting significantly improved Kobo support! It now natively edits, views, and converts KEPUB files, automatically converting EPUB to KEPUB when sending to Kobo devices (configurable via the Kobo icon). New features include connecting to folders (ideal for Chromebooks), a revamped ToC editor, updated macOS icons, and numerous bug fixes. Previous 7.x releases introduced exciting additions like an audio overlay tool, automatic PDF header/footer removal, drastically faster EPUB opening, and the new Piper neural network TTS engine, enhancing reading and editing workflows.

Development e-book update

BCX: Free and Open Source BASIC to C/C++ Translator

2025-03-21

BCX is a free and open-source BASIC to C/C++ translator that converts your BASIC source code into highly efficient C/C++ code. Supporting numerous compilers and boasting a comprehensive help file and sample programs, it's beginner-friendly. Written entirely in BCX BASIC itself, it translates over 38,000 lines of code in under a second on a modest i7 system, highlighting its speed. Ideal for those learning C/C++ or seeking a quick way to build Windows desktop applications.

Development

Adélie Linux Saves the Day: RISC-V Rebuilds on Milk-V Pioneer

2025-03-21

Facing infrastructure challenges, the decision to drop RISC-V repositories was reversed thanks to Zach van Rijn of Adélie Linux, who provided access to a Milk-V Pioneer machine. A full world rebuild was completed on this machine, resulting in new, tested repositories. While performance isn't quite on par with Cortex-A72 (closer to Cortex-A55), build times are acceptable for most projects (though Rust builds remain slow). The new repositories are comparable to LoongArch64, including tests. This solution is provisional and future support will depend on ongoing performance and stability.

Development

Browser Databases: The Future of Frontend Sync?

2025-03-21
Browser Databases: The Future of Frontend Sync?

Niki explores the challenges of data synchronization in modern web applications. Traditional tools like XHR, fetch, REST, and GraphQL only solve the problem of getting data once, failing to address the complexities of continuous changes, request failures, and data conflicts. The article argues that building a browser-based database offers a more effective solution to data synchronization. This not only simplifies the development process and improves efficiency but also provides more reliable and efficient data management, ultimately allowing developers to focus on business logic rather than low-level data synchronization details. Using Roam Research as an example, the author demonstrates the feasibility of a serverless architecture and believes that sync engines have the potential to simplify the tech stack, consolidating databases and servers, and fundamentally changing frontend development.

IndieWeb: Taking Off Isn't the Point

2025-03-21

The IndieWeb, a community focused on reclaiming digital independence through self-hosted websites, is often criticized for not having 'taken off.' This article argues that such criticisms miss the point. The value of IndieWeb lies not in mass adoption, but in its empowering individuals to control their online presence, embrace creative freedom, and connect with like-minded individuals. The author reminisces about the joy of hand-coding websites in the early 2000s, highlighting the hacker culture of creation and sharing that underpins IndieWeb. Its meaning isn't in its size, but in its commitment to decentralization and creative expression, making it already meaningful for those who value these principles.

Development Personal Websites

arXivLabs: Experimenting with Community-Driven Features

2025-03-21
arXivLabs: Experimenting with Community-Driven Features

arXivLabs is a platform enabling collaborators to build and share new arXiv features directly on the website. Participants, both individuals and organizations, share arXiv's values of openness, community, excellence, and user data privacy. arXiv is committed to these principles and only partners with those who uphold them. Got an idea to enhance the arXiv community? Learn more about arXivLabs.

Development

Asahi Linux 6.14 Update: 8000 Lines of Code Upstream, Mic Support Incoming

2025-03-21
Asahi Linux 6.14 Update: 8000 Lines of Code Upstream, Mic Support Incoming

The Asahi Linux team released a major progress update for the 6.14 release, focusing on upstreaming a large number of downstream patches to the Linux kernel. Overcoming personnel changes and natural disasters, the team successfully submitted three new drivers (including Touch Bar and ISP drivers) and actively cleaned up the GPU driver for submission. Furthermore, they implemented microphone support on most laptops, requiring overcoming Secure Enclave restrictions and developing an MVDR beamforming algorithm. Fedora Asahi Remix 42 Beta is now available, and a successful demonstration of Asahi Linux running Steam games was showcased at SCaLE. The team also received substantial financial support through OpenCollective, ensuring the project's long-term sustainability.

Development

PostgreSQL Debugging: Streamlining Database Debugging with Inheritance

2025-03-21
PostgreSQL Debugging: Streamlining Database Debugging with Inheritance

This article presents a method to simplify PostgreSQL database debugging using inheritance. By creating a common parent table with a serial ID and timestamp, all child tables inherit these columns, ensuring unique IDs across all tables and identical timestamps for data within the same transaction. A single SQL query then retrieves all IDs and their corresponding table names, while timestamps reveal insertion order and transaction relationships, significantly improving debugging efficiency.

Development Database Debugging

GizmoSQL: A High-Performance Apache Arrow Flight SQL Server

2025-03-20
GizmoSQL: A High-Performance Apache Arrow Flight SQL Server

GizmoSQL is an Apache Arrow Flight SQL server implementation using DuckDB or SQLite as a backend database. It enables authentication via middleware and allows encrypted connections via TLS. This project offers Docker images and CLI executables for easy deployment and use. Users can connect to the server via JDBC or ADBC drivers and query using Python or the `gizmosql_client` CLI tool. GizmoSQL supports custom initialization SQL commands and offers flexible configuration options, such as selecting different backend databases and enabling/disabling TLS. A slim Docker image is also available.

Development

Minimalytics: A Lightweight SQLite Analytics Tool for Billions of Events

2025-03-20
Minimalytics: A Lightweight SQLite Analytics Tool for Billions of Events

Minimalytics is a standalone minimalist analytics tool built on SQLite, designed for resource-constrained environments. It offers a lightweight solution for tracking and visualizing event data with a minimal footprint. Handling over a billion events per month with only ~20MB of storage, it's perfect for tracking internal services or needing simple analytics without the bloat. Features include a web UI for dashboard management and interactive graphs.

Building a Container Image from Scratch: A Deep Dive into OCI

2025-03-20

This article provides a clear and concise explanation of container image internals. By building a simple "hello world" image from scratch, the author details the four core components of an OCI image: layers, config, manifest, and index. The article explains how layers are created, how they combine to form a complete filesystem, and how content-addressability ensures data integrity and efficiency. The process of building with both a scratch and an alpine base image is compared, culminating in the successful running of the built container image.

AgentKit: Building Multi-Agent Networks with Deterministic Routing and Rich Tooling

2025-03-20
AgentKit: Building Multi-Agent Networks with Deterministic Routing and Rich Tooling

AgentKit is a framework for building multi-agent networks offering deterministic routing, support for multiple model providers, and rich tooling via MCP. Combined with the Inngest Dev Server and its orchestration engine, AgentKit makes your Agents fault-tolerant when deployed to the cloud. Core concepts include Agents (LLM calls combined with prompts, tools, and MCP), Networks (a simple way to get Agents to collaborate with a shared State, including handoff), State (combines conversation history with a fully typed state machine, used in routing), Routers (autonomy from code-based to LLM-based (ex: ReAct) orchestration), and Tracing (debug and optimize your workflow locally and in the cloud with built-in tracing). AgentKit supports multiple routing strategies, including code-based deterministic routing and agent-based autonomous routing, and offers a shared state mechanism for easier agent collaboration.

TruffleRuby Update: Performance Boost and Compatibility Improvements

2025-03-20
TruffleRuby Update: Performance Boost and Compatibility Improvements

TruffleRuby, a high-performance implementation of the Ruby programming language, has released a new version with significant performance improvements and compatibility enhancements. This release fixes numerous bugs, including issues in methods such as Module#name, Module#const_added, and ObjectSpace.undefine_finalizer, and improves compatibility with OpenSSL 3.0.x and 3.x. Additionally, many new methods and features have been added, such as IO#{pread, pwrite}, Range#reverse_each, and optimizations were made to encoding negotiation and the performance of several C extensions. This update enhances TruffleRuby's stability and performance, bringing it closer to the standard Ruby implementation, MRI.

Development

Ory Hydra: The Open-Source OAuth2 Server Powering ChatGPT

2025-03-20
Ory Hydra: The Open-Source OAuth2 Server Powering ChatGPT

Ory Hydra, initially a Go-based Keycloak alternative, evolved from a less flexible initial design to become a robust OAuth2 server. Focusing on building Ory Fosite, a library for OpenID Connect-compliant OAuth2 servers, and simplifying by removing user management, Ory Hydra now boasts impressive performance, reaching thousands of auth flows per second. The project's success is highlighted by its use in OpenAI's OAuth2 infrastructure, showcasing the importance of choosing clear, scalable technology and continuous optimization. This open-source project demonstrates a compelling journey from a student project to powering web-scale services.

Development

GREASE: Open-Source Tool for Finding Bugs in Binaries

2025-03-20

GREASE is an open-source tool that leverages under-constrained symbolic execution to help reverse engineers find hard-to-spot bugs in binary code, improving system security. Supporting various architectures and formats, it integrates with Ghidra, functions as a standalone command-line tool, or a Haskell library. GREASE analyzes functions by running them with fully symbolic registers, iteratively refining symbolic preconditions using heuristics when errors occur. While limitations exist, such as potential false positives and negatives, GREASE significantly aids in enhancing software security, particularly when analyzing COTS software only available in binary form.

Development bug detection

C++26: Removed and Deprecated Features Roundup

2025-03-20

C++26 is removing or deprecating several features. These include the complete removal of the `std::allocator` typedef deprecated in C++20, and the no-argument overload of `std::basic_string::reserve()`; removal of deprecated Unicode conversion utilities and `std::strtok`; removal of aged `strstreams` and `std::shared_ptr` atomic access APIs; and removal of `std::wstring_convert`. Additionally, `std::is_trivial` is deprecated, with suggestions to use the more precise `is_trivially_XXX` alternatives; and `std::memory_order::consume` is deprecated due to unsatisfactory specification and implementation difficulties. These removals and deprecations aim to improve language safety and efficiency, and clean up outdated functionality.

Physix.go: A Simple Physics Engine in Go

2025-03-20
Physix.go: A Simple Physics Engine in Go

Physix.go is a simple, fast, and easy-to-use physics engine written in Go. It offers efficient physics calculations, including particle-based simulations, vector operations, and spring dynamics. Installation is via `go get github.com/rudransh61/Physix.go`, with examples readily available. The engine supports rectangle-rectangle and circle-circle collision detection with bouncing effects based on momentum and energy conservation, and also includes spring simulation capabilities.

Development Physics Engine

The iOS App Store: A Wall to Third-Party Smartwatch Development

2025-03-20
The iOS App Store: A Wall to Third-Party Smartwatch Development

The rePebble team is back, but building an iOS app is proving to be a herculean task. The author recounts the numerous limitations encountered on iOS during the original Pebble, like the inability to send texts, reply to notifications, or interact with other apps – problems exacerbated over the last eight years. Apple's restrictions are framed not as security measures but as deliberate moves to maintain its walled ecosystem. The post calls on users to pressure Apple and support antitrust legislation to improve the iOS development environment for third-party smartwatches.

Development

Minimal GitHub Pages Deployment with GitHub Actions

2025-03-20
Minimal GitHub Pages Deployment with GitHub Actions

This post details a minimal approach to building and deploying a fully custom website using GitHub Actions and GitHub Pages. By enabling GitHub Pages, creating a YAML workflow file (publish.yml) with build and deployment steps, and placing the generated site files in the `_site/` directory, you can easily deploy static websites. This simple method allows for creating more complex features using scheduled workflows and Git scraping, such as publishing Atom feeds or custom websites, without extensive configuration.

Open Source Under Siege: AI Crawlers Unleash Chaos

2025-03-20
Open Source Under Siege: AI Crawlers Unleash Chaos

A wave of aggressive AI crawlers is crippling open-source projects. Ignoring robots.txt and consuming massive resources, these bots have caused outages at SourceHut, KDE GitLab, and GNOME GitLab. Communities are resorting to desperate measures, from implementing CAPTCHAs like GNOME's Anubis to blocking entire countries. This highlights the disproportionate burden placed on open-source communities and the unsustainable cost of maintaining free software in the age of rampant AI data scraping.

Development AI crawlers

Frontend Framework Fatigue: Stop Rewriting Everything!

2025-03-20

A frontend engineer with 20+ years of experience rails against the frontend community's obsession with rewriting applications. He argues that constantly chasing new frameworks wastes valuable time and energy that should be focused on product development. Instead of constantly switching tools, he advocates for deep mastery of core web technologies for long-term success. The over-reliance on frameworks is also making it difficult for new developers to enter the field, hindering web innovation. He calls for a return to web fundamentals to avoid being swept away by the tide of framework churn.

Development

Diving Deep into Compound File Binary Format (CFBF)

2025-03-20

The Compound File Binary Format (CFBF), also known as Compound Document Format, is a compound document file format that stores numerous files and streams within a single disk file. Resembling a FAT filesystem, it's composed of sectors, a File Allocation Table (FAT), directories, and various sector types including FAT sectors, MiniFAT sectors, Double-Indirect FAT sectors, directory sectors, and stream sectors. A CFBF file begins with a 512-byte header containing information to interpret the rest of the file. Understanding CFBF's structure is crucial for comprehending the underlying storage of files like Microsoft Office documents.

Development file format

Icicle: Destructive Updates via Tardis Monad and Stitching Graph

2025-03-20

Icicle, a high-level streaming query language, compiles to C using a struct-of-arrays approach. To ensure purity, the compiler initially inserts copy operations before array mutations. This post details an optimization using the Tardis Monad and a stitching graph to eliminate most of these copies, enabling destructive updates and achieving up to a 50% runtime reduction. The algorithm builds a reference graph to track array references, using forward and backward traversals with the Tardis Monad to determine safe destructive updates. This cleverly combines functional programming concepts with compile-time optimization, offering a novel approach to improving streaming query language performance.

Development

arXivLabs: Community Collaboration on New arXiv Features

2025-03-20
arXivLabs: Community Collaboration on New arXiv Features

arXivLabs is an open platform enabling developers to collaborate with the arXiv community to build and share new features directly on the website. Participants must adhere to arXiv's values of openness, community, excellence, and user data privacy. Have an idea to enhance the arXiv community? Learn more about arXivLabs!

Development

Stelvio: Streamlined AWS Management for Python Devs

2025-03-20
Stelvio: Streamlined AWS Management for Python Devs

Stelvio is a Python library simplifying AWS cloud infrastructure management and deployment. It uses pure Python, offering smart defaults for complex configurations. Developers define cloud resources with familiar Python code, cleanly separating infrastructure from application code. Currently supporting Lambda, DynamoDB, and API Gateway (with more AWS services planned), Stelvio prioritizes developer productivity over infrastructure complexity, offering a more streamlined approach than Terraform, Pulumi, or AWS CDK. Note: Stelvio is in early alpha, ideal for experimentation.

Development Cloud Infrastructure

CSS Gap Decorations: A New Way to Style Separators

2025-03-20
CSS Gap Decorations: A New Way to Style Separators

Drawing separator lines is common in web design, but existing CSS methods (like borders and pseudo-elements) have limitations, especially with Flexbox and Grid layouts. This article introduces the CSS gap decorations proposal, offering more control over separator styles in grids and flexboxes, including length, color, and position, even across multiple rows and columns. The proposal is seeking developer feedback to refine its functionality.

Development Grid Layout

University of Toronto Hackathon: Accidental Vulnerability Discovery

2025-03-20
University of Toronto Hackathon: Accidental Vulnerability Discovery

A University of Toronto student, while registering for the GenAI Genesis 2025 hackathon, stumbled upon a vulnerability. After resetting his password (his password manager failed to save it), he noticed the reset link pointed to a Firebase app. Curiosity piqued, he tried some common Firebase exploitation techniques. He discovered the website updated application status by writing the entire application object, not just the necessary fields. Exploiting this, he successfully changed his application status to 'accepted'. He further found an information leakage vulnerability, allowing early access to review results, reviewer information, and comments. The vulnerability has since been patched.

Development hackathon

Austral: A Systems Programming Language Focused on Simplicity and Strictness

2025-03-20
Austral: A Systems Programming Language Focused on Simplicity and Strictness

Austral is a new systems programming language designed for simplicity and strictness. Think of it as Rust's essential features or a modernized, stripped-down Ada. Key features include a strong static type system, linear types, capability-based security, and strong modularity. Linear types enforce correct resource lifecycle management, preventing memory leaks and other errors, while capability-based security mitigates supply chain attacks. Austral eschews features like NULLs, garbage collection, and exceptions to maximize safety and predictability.

Retro Pascal Compiler Memory Optimization: Clever Tokenization Techniques

2025-03-20

This article delves into the memory optimization strategies of a retro Pascal compiler. To accommodate limited memory, the compiler employs tokenization, converting error messages, reserved words, identifiers, and other elements into bytecodes. The article provides detailed hexadecimal representations and meanings of error codes, source tokens, and P-codes (pseudo-machine codes), revealing how the compiler efficiently handles the compilation process through clever tokenization and bytecode manipulation. This is valuable reading for those studying compiler design, reverse engineering, and embedded systems programming.

1 2 10 11 12 14 16 17 18 90 91