Organize the examples directory and add an examples index
- Dominant language
- Rust
- Stars
- 53
- Forks
- 16
- Avg merge
- 4h 22m
- Merged PRs (30d)
- 46
Description
## Why
The top-level `examples/` directory currently mixes introductory language samples, larger application demos, platform-specific programs, WebAssembly CI fixtures, and standard-library examples.
Small files such as `hello.wave` and `if.wave` sit beside larger or target-specific programs such as `doom.wave`, `tcp.wave`, and the WebAssembly examples. `examples/std/` already has its own focused layout and README, but the rest of the directory has no equivalent index or category structure.
## Scope
- Organize the non-`std` examples into a small set of clear categories such as `basics/`, `language/`, `applications/`, and `platform/`.
- Keep `examples/std/` as the standard-library example area rather than folding it into the new categories.
- Add `examples/README.md` with a short description, run/check command, and any target or host requirements for each maintained example.
- Update repository documentation, CI workflows, smoke runners, or scripts that reference moved example paths directly.
- Preserve the intent and behavior of the existing examples; this issue is a layout/documentation cleanup, not a rewrite of their programs.
## Completion criteria
- [ ] A new contributor can tell which examples are introductory, language-focused, application-oriented, or target-specific from the directory layout and index.
- [ ] Every moved `.wave` file is still discovered by `tools/check_wave_corpus.py`.
- [ ] WebAssembly and other CI jobs use the new paths successfully.
- [ ] `examples/std/README.md` remains valid and `examples/std/` keeps its current role.
- [ ] Repository links to example files are updated so no moved path is left stale.
Contributor guide
Research direction
Start by inventorying the non-std files under examples/ and reading examples/std/README.md, then search repository workflows, smoke runners, scripts, and links for direct example paths. Use tools/check_wave_corpus.py and the relevant CI jobs to verify discovery and WebAssembly paths. Done means the categories and examples/README.md are clear, all checks pass, and no moved-path references remain stale.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- wasm
- Domain
- build-system, ci-cd, documentation, testing-qa
- Issue type
- Documentation
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Clearly specified
- Newbie friendliness
- 64/100