germ

Crates.iogerm
lib.rsgerm
version0.4.3
sourcesrc
created_at2022-05-12 07:40:58.742872
updated_at2024-06-21 15:47:28.007975
descriptionThe Ultimate Gemini Toolkit.
homepagehttps://github.com/gemrest/germ
repositoryhttps://github.com/gemrest/germ
max_upload_size
id585088
size126,385
Fuwn (Fuwn)

documentation

https://docs.rs/germ

README

Germ

crates.io docs.rs github.com

The Ultimate Gemini Toolkit

Germ is a toolkit for the Gemini protocol which aims to have a little something for everyone. At the moment, Germ has ZERO dependencies (unless you use the request feature), and Germ will continue to try its hardest to have as few dependencies as possible.

Features

  • AST builder to easily construct and manipulate AST trees from raw Gemtext
  • Converters to easily convert from Gemtext to markup formats such as HTML or Markdown
  • Blocking and non-blocking request suite
  • Structured meta section manipulation
  • And more!

Check out the rest of the features in the Features section under Usage

Usage

Current version: crates.io

# Cargo.toml

[dependencies]
# To enable only the base (default) features: ast, convert, meta, request
# germ = "*" # Use current version show above!

# To enable only certain features
[dependencies.germ]
version = "*" # Use current version show above!
default-features = false
features = ["ast"] # Enable the features you would like to use!

Features

Feature Description
default ast, convert, meta, request
ast Construct AST trees from raw Gemtext
blocking Blocking equivalent of request
convert Convert Gemtext to markup formats such as HTML or Markdown
request Make Gemini requests, get sane, structured results
meta Structure-ise a Gemini response's meta section
macros Macros to aid with various Germ-related functionalities
quick Tiny functions to create valid Gemtext elements from structured input

Examples

Thoroughly commented examples can be found within the examples/ directory.

License

This project is licensed with the GNU General Public License v3.0.

Commit count: 93

cargo fmt