Skip to main content

max / alloy

2.6 KB · 37 lines History Blame Raw
1 # Contributing to Alloy
2
3 Alloy is currently solo-built by Max Johnson under Make Creative, LLC. External patches are not being accepted yet; this document records the conventions the project follows so the work stays internally consistent.
4
5 ## License
6
7 Alloy is MIT, copyright Make Creative, LLC. See [LICENSE]LICENSE. Contributed code must be MIT-compatible, and a dependency that is not stays out: no GPL, AGPL or LGPL, which would pull the whole binary back into copyleft.
8
9 The rule it follows is that anything meant to earn money for Make Creative is PolyForm Noncommercial and everything else is as permissive as its upstream allows. Alloy is not sold, and every crate it links is MIT or Apache, so MIT is the floor.
10
11 The design system, [`alloy_tui`]https://makenot.work/git/max/alloy_tui, is MIT in its own repo and consumed here from crates.io. It is the reusable library rather than the application, and it versions on its own cadence because projects outside Alloy depend on it.
12
13 ## Project state
14
15 Pre-v0. The docs in [`docs/`]docs/ are the project. Code follows. When a design decision changes, edit the relevant doc and let the commit message carry the rationale — no separate changelog.
16
17 ## Conventions
18
19 These mirror the rest of the `~/Code` ecosystem; deviations should be deliberate.
20
21 - **No emoji.** Anywhere. UI copy, commit messages, docs, comments, file names. The only graphic mark Alloy will adopt is its own.
22 - **No PRs, no issue tracker.** Discussion happens directly. Open questions live in [`docs/todo.md`]docs/todo.md.
23 - **Rust 2024 edition.** Latest stable. Latest deps; don't pin without a reason recorded in the manifest.
24 - **Commits:** concise, imperative, no emoji. One logical change per commit when practical.
25 - **Native builds per architecture.** No cross-compilation.
26
27 ## Code style (when code lands)
28
29 - The ratatui design-system crate is `alloy_tui`. Token constants and themed widgets live there; downstream apps re-export rather than redefine.
30 - Tokens are the source of truth for color and font-family hints. See [`docs/TOKENS.md`]docs/TOKENS.md. No hardcoded colors in widget code — pull from tokens.
31 - Prose surfaces stay in the working monospace. Mono-only is part of the brand. See [`docs/TOKENS.md`]docs/TOKENS.md.
32 - Color is reserved for information. Chrome is tinted-greyscale. See [`docs/DESIGN-LANGUAGE.md`]docs/DESIGN-LANGUAGE.md.
33
34 ## Working notes
35
36 Personal notes, todos, and audit material that aren't part of the public project live outside this repo, under `_private/docs/alloy/` in the author's environment. The `.gitignore` blocks `CLAUDE.md` and `todo.local.md` so those never enter version control.
37