Skip to main content

max / makenotwork

5.3 KB · 138 lines History Blame Raw
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