Snippets - (Hopefully) useful code snippets and header-only libs

  •        5

Some standalone source files that don't deserve their own repositories. The "DG_" prefix is not just to please my big ego, but mostly to (hopefully) avoid name collisions.



Related Projects

nuklear - A single-header ANSI C gui library

  •    C

This is a minimal state immediate mode graphical user interface toolkit written in ANSI C and licensed under public domain. It was designed as a simple embeddable user interface for application and does not have any dependencies, a default render backend or OS window and input handling but instead provides a very modular library approach by using simple input state for input and draw commands describing primitive shapes as output. So instead of providing a layered library that tries to abstract over a number of platform and render backends it only focuses on the actual UI. This library is self contained in one single header file and can be used either in header only mode or in implementation mode. The header only mode is used by default when included and allows including this header in other headers and does not contain the actual implementation.

better-enums - C++ compile-time enum to string, iteration, in a single header file.

  •    C++

Reflective compile-time enum library with clean syntax, in a single header file, and without dependencies. In C++11, everything can be used at compile time. You can convert your enums, loop over them, find their max, statically enforce conventions, and pass along the results as template arguments or to constexpr functions. All the reflection is available for your metaprogramming needs.

libsimdpp - Portable header-only zero-overhead C++ low level SIMD library

  •    C++

libsimdpp is a portable header-only zero-overhead C++ low level SIMD library. The library presents a single interface over SIMD instruction sets present in x86, ARM, PowerPC and MIPS architectures. On architectures that support different SIMD instruction sets the library allows the same source code files to be compiled for each SIMD instruction set and then hooked into an internal or third-party dynamic dispatch mechanism. This allows the capabilities of the processor to be queried on runtime and the most efficient implementation to be selected. The library sits somewhere in the middle between programming directly in SIMD intrinsics and even higher-level SIMD libraries. As much control as possible is given to the developer, so that it's possible to exactly predict what code the compiler will generate.

gsl-lite - A single-file header-only version of ISO C++ Guideline Support Library (GSL) for C++98, C++11 and later

  •    C++

GSL Lite is based on the Microsoft Guidelines Support Library (GSL). gsl-lite is a single-file header-only variant of Microsoft's implementation of the Guidelines Support Library (GSL) adapted for C++98, C++03. It should also work when compiled as C++11, C++14, C++17.

nameof - Nameof operator for modern C++, simply obtain the name of a variable, type, function, macro, and enum

  •    C++

Header-only C++17 library provides nameof macros and functions to simply obtain the name of a variable, type, function, macro, and enum. Nameof returns std::string_view. If argument does not have name, returns empty string.

nonius - A C++ micro-benchmarking framework

  •    C++

Nonius is an open-source framework for benchmarking small snippets of C++ code. It is very heavily inspired by Criterion, a similar Haskell-based tool. It runs your code, measures the time it takes to run, and then performs some statistical analysis on those measurements. The library is header-only so you don’t have to build it. It comes as a single header that you can drop somewhere and #include it in your code. Grab that header from the releases page.

rang - A Minimal, Header only Modern c++ library for terminal goodies 💄✨

  •    C++

rang only depends on C++ standard library, unistd.h system header on unix and windows.h & io.h system headers on windows based systems. In other words, you don't need any 3rd party dependencies. rang is a single header-only library. Put rang.hpp in the include folder directly into the project source tree or somewhere reachable from your project.

minimp3 - Minimalistic MP3 decoder single header library

  •    C

Conformance test passed on all vectors (PSNR > 96db). Keyj minimp3 conformance test fails on all vectors (PSNR < 96db), and free format is unsupported. This caused some problems when it was used here, and was the main motivation for this work.

sds - Simple Dynamic Strings library for C

  •    C

Notes about verison 2: this is an updated version of SDS in an attempt to finally unify Redis, Disque, Hiredis, and the stand alone SDS versions. This version is NOT binary compatible* with SDS verison 1, but the API is 99% compatible so switching to the new lib should be trivial.Note that this version of SDS may be a slower with certain workloads, but uses less memory compared to V1 since header size is dynamic and depends to the string to alloc.

restinio - A header-only C++14 library that gives you an embedded HTTP/Websocket server

  •    C++

RESTinio is a header-only C++14 library that gives you an embedded HTTP/Websocket server. It is based on standalone version of ASIO and targeted primarily for asynchronous processing of HTTP-requests. Since v.0.4.1 Boost::ASIO (1.66 or higher) is also supported (see notes on building with Boost::ASIO). Server runs on the main thread, and respond to all requests with hello-world message. Of course you've got an access to the structure of a given HTTP request, so you can apply a complex logic for handling requests.

compile-time-regular-expressions - A Compile time PCRE (almost) compatible regular expression matcher

  •    C++

Fast compile-time regular expression with support for matching/searching/capturing in compile-time or runtime. You can use single header version from directory single-header. This header can be regenerated with make single-header.

php-restclient - A generic REST API client for PHP

  •    PHP

headers - An associative array of HTTP headers and values to be included in every request. parameters - An associative array of URL or body parameters to be included in every request. curl_options - cURL options to apply to every request; anything defined here: These will override any automatically generated values. build_indexed_queries (bool) - http_build_query automatically adds an array index to repeated parameters which is not desirable on most systems. Use this option to enable the default behavior. Defaults to FALSE. user_agent - User agent string to use in requests. base_url - URL to use for the base of each request. format - Format string is appended to resource on request (extension), and used to determine which decoder to use on response; a request URL like "" would be expected to return well-formed JSON. format_regex - Pattern to extract format from response Content-Type header, used to determine which decoder to use on response. decoders - Associative array of format decoders. See "Direct Iteration and Response Decoding". username - Username to use for HTTP basic authentication. Requires password. password - Password to use for HTTP basic authentication. Requires username. url (string) - URL of the resource you are requesting. Will be prepended with the value of the base_url option, if it has been configured. Will be appended with the value of the format option, if it has been configured.

Catch2 - C++ Automated Test Cases in a Header

  •    C++

Catch2 stands for C++ Automated Test Cases in a Header and is a multi-paradigm test framework for C++. which also supports Objective-C (and maybe C). It is primarily distributed as a single header file, although certain extensions may require additional headers.

args - A simple header-only C++ argument parser library

  •    C++

A simple, small, flexible, single-header C++11 argument parsing library, in fewer than 2K lines of code. This is designed to appear somewhat similar to Python's argparse, but in C++, with static type checking, and hopefully a lot faster (also allowing fully nestable group logic, where Python's argparse does not).

algorithms_and_data_structures - 180+ Algorithm & Data Structure Problems using C++

  •    C++

Note: Some of the code here is old and was written when I was learning C++. It might be possible that code is not safe or making wrong assumptions. Please use with caution. Pull requests are always welcome. Include contains single header implementation of data structures and some algorithms.

PagedHeadListView - Android boosted ListView supporting paginated header with a new material page indicator

  •    Java

If you are looking for a listview with a paged header this is the dependency you are looking for. With PagedHeadListView you will be able to set your own fragments as new pages for the header, and a brand new indicator will be added automatically. You can play with all the custom attributes provided with the library to set indicator colors and position, ViewPager drag animation, and touch behaviour for the header view. PagedHeadListView supports API 11 - Android SDK 3.0 (HoneyComb) as minimum. This lib brings a custom ListView class called PagedHeadListView to the final user. Use it to integrate the component in your own Android application. You will not need to create your own code with FragmentStatePagerAdapter or ViewPager by yourself for creating this cool user experience, as the library does the boring work for you.

cpp-taskflow - Fast C++ Parallel Programming with Task Dependency Graphs

  •    C++

A fast C++ header-only library to help you quickly build parallel programs with complex task dependencies. Cpp-Taskflow lets you quickly build parallel dependency graphs using modern C++17. It supports both static and dynamic tasking, and is by far faster, more expressive, and easier for drop-in integration than existing libraries.

lest - A modern, C++11-native, single-file header-only, tiny framework for unit-tests, TDD and BDD (includes C++98 variant)

  •    C++

This tiny C++11 test framework is based on ideas and examples by Kevlin Henney [1,2] and on ideas found in the CATCH test framework by Phil Nash [3]. Let writing tests become irresistibly easy and attractive.

pprint - Pretty Printer for Modern C++

  •    C++

Simply include pprint.hpp and you're good to go. pprint supports a variety of STL sequence containers including std::vector, std::list, std::deque, and std::array.

We have large collection of open source products. Follow the tags from Tag Cloud >>

Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.