moxie 0.2.3

Declarative, asynchronous, incremental UI runtime.
Documentation
<!doctype html>
<html>

<head>
    <title>moxie, rust UI tools</title>
    <meta charset="utf-8" />
    <meta http-equiv="x-ua-compatible" content="ie=edge" />
    <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=1" name="viewport" />
    <script src="ofl/reloadOnChanges.js"></script>
    <link rel="stylesheet" href="https://unpkg.com/normalize.css@8.0.1/normalize.css">
    <link rel="stylesheet" href="https://unpkg.com/purecss@1.0.1/build/pure-min.css"

        integrity="sha384-oAOxQR6DkCoMliIh8yFnu25d7Eq/PHS21PClpwjOTeU2jRSq11vu66rf90/cZr47" crossorigin="anonymous">
    <link rel="stylesheet" href="index.css">
</head>

<body>
    <div class="content">
        <header class="header">
            <img src="assets/logo.png" alt="moxie logo" height="150" />
            <h1>moxie</h1>
            <p>a lightweight platform-agnostic declarative UI runtime, written in rust</p>
            <p>
                <a href="#web">web</a> |
                <a href="#xplat">xplat</a> |
                <a href="#book">book</a> |
                <a href="#repo">repo</a> |
                <a href="#related">related</a> |
                <a href="#chat">chat</a>
            </p>
        </header>

        <h5 align="middle" id="web">web crates</h5>

        <h2>
            moxie-dom
            <a href="target/doc/moxie_dom/index.html">
                <img src="https://img.shields.io/badge/docs-master-steelblue" alt="moxie-dom master branch docs badge"

                    align="right" />
            </a>
            <a href="https://docs.rs/moxie-dom">
                <img src="https://docs.rs/moxie-dom/badge.svg" alt="moxie-dom docs badge" align="right" />
            </a>
            <a href="https://crates.io/crates/moxie-dom">
                <img src="https://img.shields.io/crates/v/moxie-dom?color=steelblue" alt="moxie-dom version badge"

                    align="right" />
            </a>
        </h2>
        <p>
            a WebAssembly-based library for describing the web's DOM using moxie
        </p>

        <h3>(toy) examples</h3>
        <ul>
            <li><a href="dom/examples/hacking/index.html">DOM hacking</a></li>
            <li><a href="dom/examples/todo/index.html">TodoMVC</a></li>
            <li>
                <a href="https://github.com/anp/moxie/blob/master/dom/examples/ssr">
                    server-side rendering
                </a>
            </li>
        </ul>

        <h2>
            augdom
            <a href="target/doc/augdom/index.html">
                <img src="https://img.shields.io/badge/docs-master-steelblue" alt="augdom master branch docs badge"

                    align="right" />
            </a>
            <a href="https://docs.rs/augdom">
                <img src="https://docs.rs/augdom/badge.svg" alt="augdom docs badge" align="right" />
            </a>
            <a href="https://crates.io/crates/augdom">
                <img src="https://img.shields.io/crates/v/augdom?color=steelblue" alt="augdom version badge"

                    align="right" />
            </a>
        </h2>
        <p>
            provides an "augmented DOM" implementation that can run almost anywhere Rust can.
            compiles as either a thin wrapper around web-sys or a DOM emulation layer written in
            pure Rust which can be used for testing or to render HTML strings.
        </p>

        <h2>
            raf
            <a href="target/doc/raf/index.html">
                <img src="https://img.shields.io/badge/docs-master-steelblue" alt="raf master branch docs badge"

                    align="right" />
            </a>
            <a href="https://docs.rs/raf">
                <img src="https://docs.rs/raf/badge.svg" alt="raf docs badge" align="right" />
            </a>
            <a href="https://crates.io/crates/raf">
                <img src="https://img.shields.io/crates/v/raf?color=steelblue" alt="raf version badge" align="right" />
            </a>
        </h2>
        <p>
            runs an event loop in the browser using requestAnimationFrame
        </p>

        <h5 align="middle" id="xplat">platform-agnostic crates</h5>
        <h2>
            moxie
            <a href="target/doc/moxie/index.html">
                <img src="https://img.shields.io/badge/docs-master-steelblue" alt="moxie master branch docs badge"

                    align="right" />
            </a>
            <a href="https://docs.rs/moxie">
                <img src="https://docs.rs/moxie/badge.svg" alt="moxie docs badge" align="right" />
            </a>
            <a href="https://crates.io/crates/moxie">
                <img src="https://img.shields.io/crates/v/moxie?color=steelblue" alt="moxie version badge"

                    align="right" />
            </a>
        </h2>
        <p>
            offers memoization and runtime-coordinated mutable state for presenting interactive
            interfaces. no platform framework dependencies.
        </p>

        <p>
            includes the <code>mox!</code> macro, a Mockery Of XML. express nested function calls
            and builder instantiation using XML-lite syntax
        </p>

        <h2>
            topo
            <a href="target/doc/topo/index.html">
                <img src="https://img.shields.io/badge/docs-master-steelblue" alt="topo master branch docs badge"

                    align="right" />
            </a>
            <a href="https://docs.rs/topo">
                <img src="https://docs.rs/topo/badge.svg" alt="topo docs badge" align="right" />
            </a>
            <a href="https://crates.io/crates/topo">
                <img src="https://img.shields.io/crates/v/topo?color=steelblue" alt="topo version badge"

                    align="right" />
            </a>
        </h2>
        <p>
            create trees of stable identifiers for repeated nested function invocations. allows
            later calls to "rendezvous" with the results of previous calls at the same location in
            the tree.
        </p>

        <h2>
            illicit
            <a href="target/doc/illicit/index.html">
                <img src="https://img.shields.io/badge/docs-master-steelblue" alt="illicit master branch docs badge"

                    align="right" />
            </a>
            <a href="https://docs.rs/illicit">
                <img src="https://docs.rs/illicit/badge.svg" alt="illicit docs badge" align="right" />
            </a>
            <a href="https://crates.io/crates/illicit">
                <img src="https://img.shields.io/crates/v/illicit?color=steelblue" alt="illicit version badge"

                    align="right" />
            </a>
        </h2>
        <p>type-indexed scoped-singletons, implicitly propagated as nested environments</p>

        <hr />

        <h2 id="book">book</h2>

        <p>
            the <strong><a href="book/pkg/index.html">book</a></strong> covers project values,
            general concepts, information for contributors, etc.
        </p>
        <p>it's a work in progress and very incomplete today.</p>

        <h2 id="repo">
            repository
            <img src="https://img.shields.io/crates/l/moxie?color=steelblue" alt="license badge" />
        </h2>

        <p>
            the project is <a href="https://github.com/anp/moxie">hosted on github</a>. both the
            repo and the project chat (below) are covered by an actively enforced
            <a href="https://github.com/anp/moxie/blob/master/CODE_OF_CONDUCT.md">code of
                conduct.</a>
        </p>

        <h2 id="related">related projects</h2>

        <h3><a href="https://github.com/tiffany352/moxie-native">moxie-native</a></h3>
        <p>
            from the repo: "Warning: This is a work in progress and not yet usable for nontrivial
            applications."</p>
        <p>
            a "webrender-based UI framework with a moxie frontend" which features a "relatively
            small footprint" and is "targeted towards real world desktop applications."
        </p>

        <h2 id="chat">chat</h2>

        <iframe src="https://discordapp.com/widget?id=590930607396093971&theme=dark" width="350" height="500"

            allowtransparency="true" frameborder="0">
        </iframe>
    </div>
</body>

</html>