https://github.com/passcod/markdown-dingus
Babelmark Dingus server for Rust markdown crates
https://github.com/passcod/markdown-dingus
Last synced: 7 months ago
JSON representation
Babelmark Dingus server for Rust markdown crates
- Host: GitHub
- URL: https://github.com/passcod/markdown-dingus
- Owner: passcod
- Created: 2024-09-17T09:17:39.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-10-06T07:12:31.000Z (over 1 year ago)
- Last Synced: 2024-10-11T12:09:11.961Z (over 1 year ago)
- Language: Rust
- Homepage: https://markdown-dingus.shuttleapp.rs/
- Size: 110 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Babelmark Dingus server for Rust markdown crates
[Babelmark](https://babelmark.github.io/) is a tool to compare the output of markdown implementations.
This repository is the source of , which provides Babelmark with various Rust-based markdown parsers/renderers.
## How to add an implementation
1. Clone this repo.
2. Add the markdown crate to [Cargo.toml](./Cargo.toml).
3. Create a render module named after the crate: `src/cratename.rs`:
```rust
use axum::response::Result;
pub async fn render(input: &str) -> Result {
Ok(cratename::render_markdown_to_html_somehow(input))
}
```
4. Add the implementation to the `main.rs` `rendefers!` macro:
```rust
renderers! {
// ...
"crate_name", module_name, false, "https://github.com/example/repo"
}
```
- `crate_name` MUST be the exact name of the crate as per Cargo.toml
- `module_name` is the filename of the .rs created in step 3
- the boolean indicates commonmark compliance
- the URL must be to the repo of the markdown implementation
5. Submit a pull request!
6. Once approved and deployed, go to
7. Submit your crate's new entry in the registry to