mirror of
https://github.com/nestriness/nestri.git
synced 2026-09-19 09:15:19 +03:00
This repo holds both languages, so it needs both workspaces. Layout is the same rule on each side — apps/ for what runs, crates/ and packages/ for what is shared, split by what a thing is rather than what it is written in. Members are empty because nothing has moved in yet. Versions are pinned once at the root so two crates cannot disagree about a dependency. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
21 lines
898 B
Markdown
21 lines
898 B
Markdown
# `crates/`
|
|
|
|
Shared Rust: a library another crate in this repo depends on. A binary someone
|
|
runs goes in [`apps/`](../apps); shared JS/TS goes in
|
|
[`packages/`](../packages). The split is by *what a thing is*, not by what
|
|
language it is written in — same rule on both sides of the repo.
|
|
|
|
Empty today. Components move here one at a time as they are opened.
|
|
|
|
## Two rules
|
|
|
|
**Every version is pinned in the root `Cargo.toml`.** A member writes
|
|
`tokio.workspace = true` and never a version, so two crates in this tree cannot
|
|
disagree about a dependency.
|
|
|
|
**Nothing here may depend on anything closed, or name it.** This repo is
|
|
public. A crate that needs a private component is in the wrong repo, and a
|
|
comment explaining *who calls this* wants a category noun — "the caller", "a
|
|
supervising agent" — rather than a name. The requirement is the interesting
|
|
part; who currently satisfies it is not.
|