#document-generator #forms #elicitor #html #survey #wizard

elicitor-doc-html

HTML document generator for elicitor (generates fillable HTML forms)

2 releases

Uses new Rust 2024

0.6.1 Jan 18, 2026
0.6.0 Jan 17, 2026

#4 in #elicitor

MIT/Apache

48KB
796 lines

derive-html-document

HTML document generator for derive-survey.

This crate generates fillable HTML forms from survey definitions. It does NOT collect responses — use it to generate static HTML forms that can be served, printed, or processed by other tools.

Usage

use elicitor::Survey;
use elicitor_doc_html::to_html;

#[derive(Survey)]
struct UserProfile {
    #[ask("What is your name?")]
    name: String,

    #[ask("How old are you?")]
    #[min(0)]
    #[max(150)]
    age: i64,
}

fn main() {
    let html = to_html::<UserProfile>(Some("User Profile"));
    std::fs::write("form.html", html).unwrap();
}

elicitor

Derive interactive surveys from Rust types.

This workspace contains the elicitor crates:

Crate Description
elicitor Main crate with #[derive(Survey)] macro
elicitor-types Core data structures and traits
elicitor-macro Procedural macro implementation

Backends:

Crate Description
elicitor-wizard-dialoguer CLI prompts via dialoguer
elicitor-wizard-requestty CLI prompts via requestty
elicitor-wizard-ratatui Terminal UI wizard
elicitor-form-ratatui Terminal UI form
elicitor-form-egui Native GUI form

Document generators:

Crate Description
elicitor-doc-html HTML form output
elicitor-doc-latex LaTeX document output

See the elicitor README for usage documentation.

License

Licensed under either of Apache License, Version 2.0 or MIT license at your option.

Dependencies

~225–630KB
~14K SLoC