| 1 |
# Credits |
| 2 |
|
| 3 |
This page lists the third-party software, services, fonts, and standards Makenot.work is built on, along with their licenses and homepages. Only direct dependencies are enumerated; transitive dependencies (the dependencies of our dependencies) run into the hundreds and aren't listed here. Makenot.work itself ships under PolyForm Noncommercial 1.0.0. |
| 4 |
|
| 5 |
--- |
| 6 |
|
| 7 |
## Primary dependencies |
| 8 |
|
| 9 |
### [Tokio](https://tokio.rs) |
| 10 |
|
| 11 |
Asynchronous runtime; every other Rust dependency on this list assumes it. Originally designed by Carl Lerche. MIT. |
| 12 |
|
| 13 |
### [Axum](https://github.com/tokio-rs/axum) |
| 14 |
|
| 15 |
HTTP framework. A thin layer over `tower`, `hyper`, and `tokio`. Maintained as part of the Tokio project. MIT. |
| 16 |
|
| 17 |
### [sqlx](https://github.com/launchbadge/sqlx) |
| 18 |
|
| 19 |
Async PostgreSQL driver with compile-time query checking. MIT or Apache-2.0. |
| 20 |
|
| 21 |
### [PostgreSQL](https://www.postgresql.org/) |
| 22 |
|
| 23 |
The database. Free, open-source, ~30 years of community maintenance. PostgreSQL License (permissive). |
| 24 |
|
| 25 |
### [aws-sdk-s3](https://github.com/awslabs/aws-sdk-rust) |
| 26 |
|
| 27 |
S3 protocol client. We point it at [Hetzner Object Storage](https://www.hetzner.com/storage/object-storage/). Maintained by AWS. Apache-2.0. |
| 28 |
|
| 29 |
### [async-stripe](https://github.com/arlyon/async-stripe) |
| 30 |
|
| 31 |
Rust wrapper around Stripe's API. Maintained by [Alex Whiting](https://github.com/arlyon). MIT or Apache-2.0. |
| 32 |
|
| 33 |
### [YARA-X](https://github.com/VirusTotal/yara-x) |
| 34 |
|
| 35 |
Malware-pattern scanner. Rust rewrite of YARA, from the VirusTotal team. BSD-3-Clause. |
| 36 |
|
| 37 |
### [ClamAV](https://www.clamav.net/) |
| 38 |
|
| 39 |
Virus scanner. We talk to it over INSTREAM. Maintained by Cisco Talos. GPL-2.0. |
| 40 |
|
| 41 |
### [Askama](https://github.com/askama-rs/askama) |
| 42 |
|
| 43 |
Templates compiled into Rust at build time; typos become compile errors. MIT or Apache-2.0. |
| 44 |
|
| 45 |
### [git2](https://github.com/rust-lang/git2-rs) / [libgit2](https://libgit2.org/) |
| 46 |
|
| 47 |
Rust bindings to libgit2; backs every push, browse, and smart-HTTP serve under `/source`. GPL-2.0 with linking exception. |
| 48 |
|
| 49 |
### [argon2](https://github.com/RustCrypto/password-hashes/tree/master/argon2) and [webauthn-rs](https://github.com/kanidm/webauthn-rs) |
| 50 |
|
| 51 |
Password hashing (argon2, OWASP-recommended) and passkey login (webauthn-rs, by William Brown of SUSE). MIT or Apache-2.0. |
| 52 |
|
| 53 |
--- |
| 54 |
|
| 55 |
## Rust crates (direct dependencies) |
| 56 |
|
| 57 |
Licenses noted in parentheses where they aren't the standard MIT/Apache-2.0 dual. |
| 58 |
|
| 59 |
**HTTP and middleware**: `axum`, `axum-extra`, `tower`, `tower-http`, `tower-sessions`, `tower-sessions-sqlx-store`, `tower_governor`, `http-body-util`, `utoipa`, `utoipa-axum`. |
| 60 |
|
| 61 |
**Database**: `sqlx`, `chrono`. |
| 62 |
|
| 63 |
**Storage**: `aws-sdk-s3`, `aws-config`, `fs2`, `memmap2`, `tempfile`, `bytes`. |
| 64 |
|
| 65 |
**Scanning and binary analysis**: `yara-x` (BSD-3-Clause), `infer`, `object`, `goblin`, `authenticode`, `apple-codesign` (MPL-2.0), `zip`, `x509-cert`, `x509-parser`, `asn1-rs`, `const-oid`. |
| 66 |
|
| 67 |
**Payments**: the `async-stripe` family (`async-stripe`, `async-stripe-billing`, `async-stripe-checkout`, `async-stripe-connect`, `async-stripe-core`, `async-stripe-payment`, `async-stripe-product`, `async-stripe-shared`, `async-stripe-types`). |
| 68 |
|
| 69 |
**Auth and crypto**: `argon2`, `webauthn-rs`, `webauthn-rs-proto`, `webauthn-authenticator-rs`, `jsonwebtoken`, `hmac`, `sha1`, `sha2`, `totp-rs`, `chacha20poly1305`, `subtle`, `rand`, `zeroize`, `aes`. |
| 70 |
|
| 71 |
**Templating and markup**: `askama`, `pulldown-cmark`, `syntect`, `ammonia`, `regex`, `regex-lite`, `unicode-normalization`. |
| 72 |
|
| 73 |
**HTTP client**: `reqwest`, `hickory-resolver`, `webpki-roots`, `rustls-pki-types`, `tokio-rustls`. |
| 74 |
|
| 75 |
**Serialization**: `serde`, `serde_json`, `toml`, `base64`, `hex`, `url`, `urlencoding`, `email_address`, `semver`, `uuid`. |
| 76 |
|
| 77 |
**Async**: `tokio`, `tokio-stream`, `tokio-util`, `async-trait`, `dashmap`, `parking_lot`, `governor`. |
| 78 |
|
| 79 |
**Git**: `git2` (and through it, libgit2, GPL-2.0 with linking exception). |
| 80 |
|
| 81 |
**Observability**: `tracing`, `tracing-subscriber`, `metrics`, `metrics-exporter-prometheus`, `log`. |
| 82 |
|
| 83 |
**Errors**: `anyhow`, `thiserror`. |
| 84 |
|
| 85 |
**CLI and TUI** (mnw-cli, sando-tui, wam): `clap`, `ratatui`, `crossterm`, `russh`, `russh-sftp`, `dirs`. |
| 86 |
|
| 87 |
**MCP**: `rmcp`. |
| 88 |
|
| 89 |
**Testing**: `proptest`, `wiremock`, `tempfile`, `criterion`, `fast-tests`. |
| 90 |
|
| 91 |
Transitive dependencies are not enumerated; see `cargo tree` for the full set. |
| 92 |
|
| 93 |
--- |
| 94 |
|
| 95 |
## Other software |
| 96 |
|
| 97 |
- **[PostgreSQL](https://www.postgresql.org/)**: database (PostgreSQL License). |
| 98 |
- **[ClamAV](https://www.clamav.net/)**: virus scanner (GPL-2.0). |
| 99 |
- **[Caddy](https://caddyserver.com/)**: reverse proxy and TLS (Apache-2.0). |
| 100 |
|
| 101 |
--- |
| 102 |
|
| 103 |
## Services |
| 104 |
|
| 105 |
- **[Hetzner](https://www.hetzner.com/)**: cloud hosting and object storage. |
| 106 |
- **[Cloudflare](https://www.cloudflare.com/)**: DNS, CDN, DDoS protection. |
| 107 |
- **[Stripe](https://stripe.com/)**: payment processing. |
| 108 |
- **[Postmark](https://postmarkapp.com/)**: transactional email. |
| 109 |
- **[Let's Encrypt](https://letsencrypt.org/)**: TLS certificates. |
| 110 |
- **[Tailscale](https://tailscale.com/)**: private network. |
| 111 |
|
| 112 |
--- |
| 113 |
|
| 114 |
## Fonts |
| 115 |
|
| 116 |
All served from Google Fonts under the Open Font License. |
| 117 |
|
| 118 |
- **Young Serif** (Bunny Studio) |
| 119 |
- **IBM Plex Mono** (IBM) |
| 120 |
- **Lato** (Łukasz Dziedzic) |
| 121 |
|
| 122 |
--- |
| 123 |
|
| 124 |
## Standards |
| 125 |
|
| 126 |
- HTTP/1.1, HTTP/2 (IETF) |
| 127 |
- WebAuthn Level 3 (W3C / FIDO Alliance) |
| 128 |
- TOTP (RFC 6238) |
| 129 |
- OAuth 2.0 + PKCE (IETF) |
| 130 |
- S3 API (AWS) |
| 131 |
- YARA rule syntax (VirusTotal) |
| 132 |
|
| 133 |
--- |
| 134 |
|
| 135 |
## Did we miss you? |
| 136 |
|
| 137 |
If your project or service is in the list above and we got the description wrong, or if you maintain something we depend on and don't see your name here, email us at `info@makenot.work` and we'll fix it. |
| 138 |
|