atproto blogging
1//! AT Protocol renderer for weaver notebooks
2//!
3//! Two-stage pipeline: markdown→markdown preprocessing (CLI),
4//! then client-side markdown→HTML rendering (WASM).
5
6mod client;
7mod embed_renderer;
8mod error;
9mod markdown_writer;
10#[cfg(not(target_family = "wasm"))]
11mod preprocess;
12mod types;
13mod writer;
14
15pub use client::{ClientContext, DefaultEmbedResolver, EmbedResolver};
16pub use embed_renderer::{
17 // Async fetch-and-render functions (require agent/network)
18 fetch_and_render, fetch_and_render_generic, fetch_and_render_post, fetch_and_render_profile,
19 // Pure sync render functions (pre-fetched data, no network)
20 render_generic_record, render_post_view, render_profile_data_view, render_record,
21};
22pub use error::{AtProtoPreprocessError, ClientRenderError};
23pub use markdown_writer::MarkdownWriter;
24#[cfg(not(target_family = "wasm"))]
25pub use preprocess::AtProtoPreprocessContext;
26pub use types::{BlobInfo, BlobName};
27pub use writer::{ClientWriter, EmbedContentProvider};
28
29#[cfg(test)]
30mod tests;