diff --git a/README.md b/README.md index 091e045..71a4bbe 100644 --- a/README.md +++ b/README.md @@ -283,3 +283,49 @@ as C/C++, as this is not an obstacle to most users.) | [dbgtools](https://github.com/wc-duck/dbgtools) | zlib |C/C++| 2 | cross-platform debug util libraries | [stmr](https://github.com/wooorm/stmr.c) | MIT | C | 2 | extract English word stems | [levenshtein](https://github.com/wooorm/levenshtein.c) | MIT | C | 2 | compute edit distance between two strings + +There are also these XML libraries, but if you're using XML, shame on you: + +- parsing: [tinyxml2](https://github.com/leethomason/tinyxml2): XML +- parsing: [pugixml](http://pugixml.org/): XML (MIT license) + +## New libraries and corrections + +Submissions of new libraries: I accept submissions (as issues or as pull requests). Please +note that every file that must be included in a user's project counts; a header and a source +file is 2 files, but a header file, source file, and LICENSE (if the license isn't in the +source file) is 3 files, and won't be accepted, because it's not 2 files. But actually +'LICENSE' is a problem for just dropping the library in a source tree anyway, since it's +not scoped to just the library, so library authors are encouraged to include the license in the +source file and not require a separate LICENSE. + +Corrections: if information for a library above is wrong, please send a correction as an +issue, pull request, or email. Note that if the list indicates a library works from both +C/C++, but it doesn't, this could be an error in the list or it could be a bug in the +library. If you find a library doesn't work in 32-bit or 64-bit, the library should be +removed from this list, unless it's a bug in the library. + +## *List FAQ* + +### Can I link directly to this list? + +Yes. [This is the preferred link.](https://github.com/nothings/single_file_lib) + +### Why isn't library XXX which is made of 3 or more files on this list? + +I draw the line arbitrarily at 2 files at most. (Note that some libraries that appear to +be two files require a separate LICENSE file, which made me leave them out). Some of these +libraries are still easy to drop into your project and build, so you might still be ok with them. +But since people come to stb for single-file public domain libraries, I feel that starts +to get too far from what we do here. + +### Why isn't library XXX which is at most two files and has minimal other dependencies on this list? + +Probably because I don't know about it, feel free to submit a pull request, issue, email, or tweet it at +me (it can be your own library or somebody else's). But I might not include it for various +other reasons, including subtleties of what is 'minimal other dependencies' and subtleties +about what is 'lightweight'. + +### Why isn't SQLite's amalgamated build on this list? + +Come on.