deno_doc 0.160.0

doc generation for deno
Documentation
# `deno_doc`

A Rust crate to generate documentation for JavaScript and TypeScript modules.

This crate powers
[`deno doc`](https://deno.land/manual/tools/documentation_generator), but is not
Deno specific and can be used to write documentation generators for other
targets like Node or the browser as well.

## Usage from Deno CLI or Deploy

See [js/README.md](js/README.md).

## Rust Example

`examples/ddoc/main.rs` provides a minimal standalone binary demonstrating how
`deno_doc` can be used as a crate.

```shell
$ cargo run --example ddoc ../deno_std/http/mod.ts
```

## Developing

```shell
# build all targets
$ cargo build --all-targets

# test it
$ cargo test

# build js api
$ deno task build

# test it
$ deno task test
```

We use [insta](https://github.com/mitsuhiko/insta) testing tool for taking
snapshots of the html output. If you change the rednering of html output, or
change the fixture files for html testing, you need to update snapshot using
[cargo-insta](https://insta.rs/docs/quickstart/) command.

```
# update snapshots
cargo insta test

# review snapshots
cargo insta review
```

See [the insta docs](https://insta.rs/docs/quickstart/) for more details.

## Contributing

- If you are going to work on an issue, mention so in the issue comments
  _before_ you start working on the issue.

- Please be professional in the forums. See our
  [Code of Conduct]https://github.com/denoland/deno/blob/main/.github/CODE_OF_CONDUCT.md.

- Ask for help in the [community chat room]https://discord.gg/deno.

## Submitting a Pull Request

Before submitting, please make sure the following is done:

1. That there is a related issue and it is referenced in the PR text.
2. There are tests that cover the changes.
3. Ensure `cargo test` and `deno task test` passes.
4. Format your code with `rustfmt --check src/lib.rs`
5. Make sure `cargo clippy --all-targets --release --locked -- -D clippy::all`
   passes.