Lightweight JSON text parser
Library provides generic JSON text parser, that is optimized for embedded systems.
Supports streaming
parsing or classic parsing with full JSON data available in one big linear memory.
First one being optimized for ultra small microcontrollers, second one being ready for PC applications - or simply when several kB of RAM memory is available at any given point of time
Features
- Written in C (C11), compatible with
size_t
for size data types
- RFC 4627 and RFC 8259 compliant
- Based on static token allocation with optional application dynamic pre-allocation
- No recursion during parse operation
- Re-entrant functions
- Zero-copy, no
malloc
or free
functions used
- Supports streaming parsing as secondary option
- Optional support for inline comments with
/* comment... */
syntax between any blank region of input string
- Advanced find algorithm for tokens
- Test coverage is available
- User friendly MIT license
Contribute
Fresh contributions are always welcome. Simple instructions to proceed:
- Fork Github repository
- Follow C style & coding rules already used in the project
- Create a pull request to develop branch with new features or bug fixes
Alternatively you may:
- Report a bug
- Ask for a feature request