shiva-0.3.2 has been yanked.
Shiva

Shiva library: Implementation in Rust of a parser and generator for documents of any type
Features
- Common Document Model (CDM) for all document types
- Parsers produce CDM
- Generators consume CDM
Supported document types
| Document type | Parse | Generate |
|---|---|---|
| Plain text | + | + |
| Markdown | + | + |
| HTML | + | + |
| + | + | |
| JSON | + | + |
| XML | - | - |
| DOC | - | - |
| XLS | - | - |
Parse document features
| Document type | Header | Paragraph | List | Table | Image | Hyperlink | PageHeader | PageFooter |
|---|---|---|---|---|---|---|---|---|
| Plain text | - | + | - | - | - | - | - | - |
| Markdown | + | + | + | + | + | + | - | - |
| HTML | + | + | + | + | + | + | - | - |
| - | + | + | - | - | - | - | - | |
| JSON | + | + | + | + | - | + | + | + |
Generate document features
| Document type | Header | Paragraph | List | Table | Image | Hyperlink | PageHeader | PageFooter |
|---|---|---|---|---|---|---|---|---|
| Plain text | + | + | + | + | - | + | + | + |
| Markdown | + | + | + | + | + | + | + | + |
| HTML | + | + | + | + | + | + | - | - |
| + | + | + | + | - | + | + | + | |
| JSON | + | + | + | + | - | + | + | + |
Usage Shiva library
Cargo.toml
[]
= { = "0.3.1", = ["html", "markdown", "text", "pdf", "json"] }
main.rs
Shiva CLI
Install Rust for Linux/MacOS
|
Install Rust for Windows
Build executable Shiva
Run executable shiva
Contributing
I would love to see contributions from the community. If you experience bugs, feel free to open an issue. If you would like to implement a new feature or bug fix, please follow the steps:
- Contact with me via telegram @ievkz or discord @igumnovnsk
- Confirm e-mail invitation in repository
- Do "git clone"
- Create branch with your assigned issue
- Create pull request to main branch