# vparser [Source](https://git.sr.ht/~whynothugo/vparser) | [Issues](https://todo.sr.ht/~whynothugo/vdirsyncer-rs) | [Patches](https://lists.sr.ht/~whynothugo/vdirsyncer-devel) | [Chat](irc://ircs.libera.chat:6697/#pimutils) A low-level icalendar and vcard parser. - Gracefully handle invalid or malformed data. - Handles large amount of data without unnecessary copies. - Does not interpret the internal data in calendar components or contact data inside of vcards. This library is likely too low level calendar applications or other consumers that need to interpret calendar data itself. It is suitable for tools that operate on icalendar components in an opaque manner. E.g.: normalisation, merging components, synchronisation, etc. ## Requirements `vparser` requires Rust and Cargo to built. It has no additional build or runtime dependencies. It is technically usable in a `no_std` environment, although that is unlikely to be of much use. ## Documentation The API documentation [is available online at docs.rs][docs]. It can also be rendered locally using `cargo doc`. [docs]: https://docs.rs/vparser/ For additional design notes, see [this article written during its development][article] [article]: https://whynothugo.nl/journal/2023/11/27/vdirsyncer-status-update-november-2023/ ## Licence This project is licensed under the ISC licence. See LICENCE for details.