1
0
Fork
You've already forked tclib
0
Set of single-file public domain libraries. Migrated from GitHub, Codeberg is now the primary repository.
  • C 88.1%
  • C++ 10.8%
  • Shell 0.6%
  • Python 0.5%
Find a file
2026年03月13日 21:40:15 +01:00
demos Add TCHash* "dynamic" algorithm selection support. Bump to 0.1.0. 2025年11月23日 21:21:52 +01:00
helpers Added tc_texture_load and tc_texture_codec. 2018年01月15日 00:11:32 +01:00
screenshots Added screenshot + README.md fixup. 2016年09月08日 15:43:32 +02:00
tests Added tc_texture_load and tc_texture_codec. 2018年01月15日 00:11:32 +01:00
.gitignore Initial commit. 2016年09月08日 15:13:18 +02:00
README.md Markdown/README.md fixups. 2026年03月13日 21:40:15 +01:00
tc_editline.h Bumped library version to 0.0.2. 2016年09月08日 18:25:06 +02:00
tc_hash.h Add TCHash* "dynamic" algorithm selection support. Bump to 0.1.0. 2025年11月23日 21:21:52 +01:00
tc_history.h Updated version history information (forgot to before). 2016年09月11日 14:45:32 +02:00
tc_random.h Add OS (& Emscripten) RNG support to tc_random. 2025年11月23日 23:09:14 +01:00
tc_string.h Updated version history information (forgot to before). 2016年09月11日 14:45:32 +02:00
tc_terminal.h Fixed a bug causing tc_terminal to not compile in POSIX. 2018年06月30日 01:11:33 +02:00
tc_texture_codec.h Fixed compilation of tc_texture_codec in FreeBSD. 2018年06月30日 01:12:01 +02:00
tc_texture_load.h Fixed a crash in tc_texture_load.h when height is set to 0 (thanks, American Fuzzy Lop!) 2018年06月30日 01:20:24 +02:00
tc_thread.h Add tcthread_once, plus some fixes. 2026年03月13日 21:39:14 +01:00
tc_vox.h Fix a bug with transforms. 2025年11月23日 17:40:18 +01:00
tc_xml.h Resolve a number of issues in tc_xml. 2024年08月05日 18:08:36 +02:00

TCLib

License: Dual-licensed CC0 and Boost (pick one)

A set of single-file public domain libraries done in the spirit of the stb libraries.

Note that some of the libraries have dependencies. For a quick reference see the "DEPENDS:" line near the top of each file.

The following libraries are currently available.

Library Version Description Dependencies
tc_string.h -.-.- String utility functions. (may be removed if merged)
tc_terminal.h -.-.- System terminal (console) abstraction layer (colors, cursor, ...).
tc_history.h -.-.- Line history handling; independent of system terminal. tc_string
tc_editline.h -.-.- Terminal line input with history handling. tc_terminal tc_history / tc_string
tc_random.h -.-.- Random number generation. (very unstable API)
tc_hash.h -.-.- Cryptographic hash function library.
tc_texture_load.h -.-.- Texture loading (currently only DDS).
tc_texture_codec.h -.-.- Texture block (de)compression (currently only decompressors).
tc_thread.h 0.2.3 Threading & atomics (atomics, threads, mutexes, condition variables, ...)
tc_vox.h 0.3.0 MagicaVoxel *.vox loading library.
tc_xml.h 0.1.0 XML parsing (for now only mostly compliant).

Target OSes are Windows, Linux, FreeBSD and Mac OS X. Note that I do not currently have access to OS X, so the code might be buggier than usual.

Planned and WiP Libraries:

  • tc_vfs.h (WiP): Virtualized filesystem with directory+zip support (will either use miniz, or [because miniz has issues and is unmaintained] a custom tc_[un]zip.h).

Screenshots:

Editline: editline