30 open-source projects similar to mpaland/printf, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Printf alternative.
fmt is a type-safe C++ text formatting library used to convert data into formatted strings and text. It serves as a high-performance string buffer utility and provided the basis for the formatting features introduced in the C++20 standard. The library shifts format string validation and size computation to the compilation phase to prevent runtime crashes and increase execution speed. It utilizes a memory-efficient interface to write formatted data directly into buffers, minimizing allocations and eliminating intermediate string overhead. The project covers a broad range of text processing ca
cppformat is a type-safe C++ formatting library that serves as a high-performance alternative to standard C++ input and output streams for converting data into formatted strings. It integrates a compile-time format validator to ensure format specifiers match argument types, preventing runtime crashes. The library includes a positional argument engine that enables the reordering of text arguments for internationalization and localization. It also features a Unicode text formatter to ensure consistent and portable character representation across different operating systems. The project provide
This is a design plugin for Sketch that populates design mockups with realistic dummy data, including names, avatars, and geographic information. It functions as a placeholder data generator to fill layout designs during the prototyping phase. The project features a local image asset importer that connects local directories to use personal files as source material for generated content. It also includes a dynamic text composer that builds customized strings using random number ranges and randomized arrays to create varied design iterations.
bignumber.js is an arbitrary-precision JavaScript library designed to perform mathematical operations on decimals and integers that exceed the limits of standard floating-point numbers. It functions as a decimal arithmetic engine and a math library for calculating square roots, powers, and modular exponentiation. The project provides a base conversion utility capable of parsing and translating numeric values between any base from 2 to 36. It also includes a numeric formatting tool for rendering high-precision values into localized strings with custom separators and notation styles. The libra
Polyglot.js is a JavaScript internationalization library and client-side translation framework. It provides a system for mapping unique keys to localized strings, allowing applications to translate text into multiple languages. The library includes a pluralization and interpolation engine that handles complex grammatical plural forms based on numeric counts and inserts dynamic variables into translated strings. It supports nested namespaces to organize phrase mappings into logical categories. These utilities cover phrase translation, locale-driven configuration, and the management of multi-l
This project is a Git commit standardization tool and semantic commit generator. It serves as an assistant to align code changes with semantic versioning by enforcing a consistent commit structure and formatting rules. The utility uses interactive prompts to gather user input, which it then validates against semantic categories and interpolates into predefined templates. This process automates the generation of standardized messages, ensuring that each commit follows a specific format to improve project history and traceability. The system also handles commit metadata structuring, including
AngularJS Internationalization Library is a localization framework for AngularJS 1.x applications. It functions as an i18n translation tool used to swap static user interface text with localized versions based on a selected locale. The framework manages multi-language content through asynchronous loading of translation files to minimize bundle size. It includes systems for handling pluralization rules and interpolating dynamic variables into translation strings. The project also provides capabilities for language switching and fallback-chain resolution to ensure a readable string is displaye
SwiftyBeaver is an extensible logging framework for Swift that routes log output to multiple destinations simultaneously, including the Xcode console, local files, and remote cloud services. It supports recording messages at distinct severity levels with corresponding visual styling, and can attach arbitrary contextual data such as numbers, arrays, or dictionaries to log entries without requiring manual string conversion. The framework distinguishes itself through destination-based log routing, where each output target can have its own independent format and filter configuration managed by a
JavaPoet is a source code generator and metaprogramming utility for the Java language. It functions as an abstract syntax tree construction library that allows developers to model classes, methods, and fields as objects before emitting them as source code. The library distinguishes itself through automatic import management and code formatting. It tracks referenced types to generate required import statements and handles line wrapping, semicolon placement, and indentation to ensure generated files remain readable. The tool covers a broad range of generation capabilities, including the defini
Java-faker is a synthetic data generator and mock data library for Java applications. It provides utilities to create randomized, believable fake records such as names and addresses to populate test environments and verify application logic without using real user information. The library specializes in localized data generation, producing synthetic content tailored to specific languages and regional formats. This allows for the verification of application accuracy across different global locales. The tool covers broad capabilities for automated testing mocking, including the generation of m
thiserror is a Rust error handling library and procedural macro designed to define custom error types. It functions as a trait implementation automator that generates the necessary code for standard library error traits at compile time. The library focuses on eliminating boilerplate by using derive macros to automatically implement display and source methods. It allows for the creation of custom error structs and enums that can map low-level errors to high-level variants while preserving the original cause and backtrace information. Its capabilities cover custom error formatting through temp
This project provides a collection of coordinated color themes and visual presets for the tmux terminal multiplexer. It is designed to standardize the interface appearance by styling the status bar and window borders through a set of curated color palettes. The system enables comprehensive interface customization, allowing for the modification of window tabs and the application of visual styles to system metric displays. It includes a management system for switching between distinct visual presets to maintain a consistent aesthetic across the terminal workspace. The project covers the config
bash-git-prompt is a Bash shell extension and prompt customizer that integrates real-time Git status indicators directly into the terminal. It functions as a shell theme that displays branch names, commit divergence, and file status markers within the command line interface. The project distinguishes itself through a hierarchical configuration system that allows for directory-specific overrides of global settings. It includes performance tuning options to maintain shell responsiveness in large repositories by selectively disabling expensive operations such as remote fetching or untracked file
Bogus is a fake data generator for .NET applications, including C#, F#, and VB.NET. It provides a deterministic mock data engine and an object configuration mapper to produce realistic profiles, addresses, and financial records. The library differentiates itself through a localization data provider that generates region-specific identifiers across various international languages and locales. It ensures reproducibility across executions by using seed values to control the sequence of generated data. The project covers wide-ranging data synthesis capabilities, including the generation of netwo
Radash is a TypeScript functional utility library designed for data transformation, validation, and workflow management. It provides a collection of typed helper functions to manipulate arrays, objects, and strings. The project features an asynchronous workflow toolkit for managing promises, retries, and concurrency limits, alongside a suite of boolean validators for verifying primitive types, objects, and promises. It also implements functional programming patterns such as function composition, partial application, and error-first response patterns. The library covers a broad surface of cap
This project is a Go shell scripting library and framework designed for writing automation scripts and CLI tools. It provides a concurrent data pipeline system for chaining sources, filters, and sinks to process text and JSON streams. The library distinguishes itself through a comprehensive toolkit for shell-like operations, including a text processing engine for regular expression filtering and frequency analysis, a filesystem utility toolkit for recursive search and path manipulation, and an integrated HTTP client wrapper for building data pipelines that fetch web content. The capability s
gofakeit is a Go library for creating realistic synthetic datasets and populating Go structs with mock information. It functions as a deterministic data generator, allowing for seedable random number generation to ensure reproducible datasets for software testing. The project distinguishes itself by providing a mock data API server that exposes generation functions as HTTP endpoints and a synthetic dataset exporter for producing files in CSV, JSON, and XML formats. It also includes a command-line interface for generating mock data directly from the terminal. The library covers a wide array o
node-fluent-ffmpeg is a Node.js wrapper for FFmpeg that provides a fluent interface for executing media commands and processing files. It functions as a process manager that handles the lifecycle of external FFmpeg binaries, enabling programmatic media transcoding, video thumbnail generation, and metadata extraction via ffprobe. The library distinguishes itself through a command builder that translates JavaScript method calls into command-line arguments. It features event-driven progress monitoring to track processed frames and throughput, as well as the ability to route processed media data
koro1FileHeader is a VSCode extension designed to automatically generate and update standardized comment blocks at the top of source files. It serves as a file metadata manager and automated code documenter that tracks authorship, modification times, and file paths directly within the code upon saving. The tool synchronizes author names and email addresses from local Git configurations to populate header fields. It also features a source code comment decorator capable of inserting decorative comment art and visual patterns to organize code sections. The extension covers a broad range of capa
sds is a C dynamic string library that provides a memory management wrapper for heap-allocated strings. It implements binary-safe storage by tracking string lengths explicitly, allowing the library to handle null characters within data. The library distinguishes itself through a memory architecture that uses interchangeable function pointers for allocation and freeing, enabling the integration of custom memory managers. It utilizes header-stored length tracking to provide constant-time length retrieval and maintains null-terminated buffer padding to ensure compatibility with standard C string
This repository is a collection of technical knowledge and solutions focused on mobile application development, particularly for Android and iOS platforms. It covers a wide range of practical engineering challenges, including hotfix and patching techniques, database management and repair, network communication, logging, and video processing. The content is presented as shared knowledge, documenting real-world problems and their implementations. The project provides detailed guidance on applying hotfixes to running Android applications through multiple methods, such as class replacement, full
This log system is thinked for embedded systems with mininmal resource utilization. The log system is designed to minimize memory compsumition in flash or RAM, enable an eficient in-ram loggin buffer with very efficient storage.
EasyLogger is a lightweight C/C++ logging library and asynchronous framework designed for embedded systems, IoT devices, and wearables. It functions as a resource-efficient logger and flash memory manager, providing tools for low-level debugging and system event recording with minimal ROM and RAM requirements. The project distinguishes itself through an asynchronous logging model that buffers messages to a separate thread, preventing logging operations from blocking real-time application execution. It includes a specialized flash memory manager that utilizes circular buffering to persist logs
lightweight logger framework for small microcontroller based projects. Multilevel log and token based string transfer.
nanoprintf is an unencumbered implementation of snprintf and vsnprintf for embedded systems that, when fully enabled, aim for C11 standard compliance. The primary exceptions are scientific notation (%e, %g), and locale conversions that require wcrtomb to exist. C23 binary integer output is…
Tiny, fast(ish), self-contained, fully loaded printf, sprinf etc. implementation; particularly useful in embedded systems.
spdlog is a high-performance C++ logging library designed to record diagnostic messages and application events. It serves as an asynchronous logging framework and thread-safe library that coordinates access across concurrent threads to maintain message integrity. The project functions as a multi-target log router, distributing single events to multiple destinations such as consoles, files, and system daemons. It includes a log rotation manager that handles file lifecycles through basic, rotating, or daily rollover strategies to prevent disk exhaustion. The library covers a broad range of cap
WORK IN PROGRESS! Some things may still be buggy. Issues and pull requests are welcome. Additional tests are also very much welcome.