ruststream 0.7.5

Async messaging framework for Rust: broker-agnostic traits, router, codecs, and a conformance harness for broker authors.
Documentation
import React, {type ReactNode} from 'react';
import CodeBlock from '@theme/CodeBlock';
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import Translate, {translate} from '@docusaurus/Translate';
import macros from '../../../../examples/quickstart.rs';
import manual from '../../../../examples/manual/quickstart.rs';
import {exampleSource} from './source';
import shared from './landing.module.css';
import styles from './cta.module.css';
import CodeLink from './CodeLink';

/** The core's quick start service, with the macros and written by hand, read from `examples/`. */
export default function Quickstart(): ReactNode {
  return (
    <div className={styles.quickstart}>
      <div className={shared.window}>
        <Tabs groupId="landing-quickstart" className={styles.tabs}>
          <TabItem
            value="macros"
            label={translate({id: 'landing.quickstart.macros', message: 'Macros'})}>
            <CodeBlock language="rust" title="examples/quickstart.rs">
              {exampleSource(macros)}
            </CodeBlock>
          </TabItem>
          <TabItem
            value="manual"
            label={translate({id: 'landing.quickstart.manual', message: 'Manual'})}>
            <CodeBlock language="rust" title="examples/manual/quickstart.rs">
              {exampleSource(manual)}
            </CodeBlock>
          </TabItem>
        </Tabs>
      </div>
      <p className={styles.quickstartNote}>
        <Translate
          id="landing.quickstart.note"
          values={{
            app: <CodeLink to="/components/application/app-macro/">#[ruststream::app]</CodeLink>,
            main: <CodeLink to="/components/application/app-macro/">main</CodeLink>,
            run: <CodeLink to="/components/application/running/run/">cargo run -- run</CodeLink>,
            gen: <CodeLink to="/components/asyncapi/generation/cli-gen/">cargo run -- asyncapi gen</CodeLink>,
          }}>
          {
            '{app} generates {main} with all the runtime boilerplate: {run} starts the service, and {gen} prints its AsyncAPI document.'
          }
        </Translate>
      </p>
    </div>
  );
}