74 lines
2.3 KiB
Markdown
74 lines
2.3 KiB
Markdown
# NVGT Repo Map
|
|
|
|
Use this map to choose the fastest authoritative source in `nvgt-git`.
|
|
|
|
## 1. Documentation First
|
|
|
|
- `doc/src/manual/`
|
|
Practical tutorials, project workflows, and conceptual guidance.
|
|
Start here for process questions (build, compile/distribute, debugging scripts, concurrency/subscripting tutorials).
|
|
|
|
- `doc/src/references/`
|
|
API entry points.
|
|
Use this when you need object/function names and category-level API navigation.
|
|
|
|
- `doc/src/references/builtin/`
|
|
Built-in script API categories:
|
|
`Audio`, `Filesystem`, `User Interface`, `Text-To-Speech`, `Concurrency`, etc.
|
|
|
|
- `doc/src/references/include/`
|
|
Bundled include APIs (`form.nvgt`, `menu.nvgt`, `sound_pool.nvgt`, `music.nvgt`, etc.).
|
|
|
|
- `doc/src/references/plugin/`
|
|
Plugin APIs (`git2nvgt`, `nvgt_curl`, `nvgt_sqlite`, `systemd_notify`).
|
|
|
|
## 2. Bundled Script Includes
|
|
|
|
- `release/include/`
|
|
Reference implementation of bundled `.nvgt` includes shipped with NVGT.
|
|
Use this to verify behavior details not obvious in docs.
|
|
|
|
Key files:
|
|
- `release/include/form.nvgt`
|
|
- `release/include/menu.nvgt`
|
|
- `release/include/sound_pool.nvgt`
|
|
- `release/include/virtual_dialogs.nvgt`
|
|
- `release/include/music.nvgt`
|
|
- `release/include/speech.nvgt`
|
|
- `release/include/bgt_dynamic_menu.nvgt`
|
|
|
|
## 3. Engine Binding Source (Truth Layer)
|
|
|
|
- `src/*.cpp`
|
|
C++ registration and implementation of script-facing APIs.
|
|
Use this when docs and includes do not fully answer behavior/signature questions.
|
|
|
|
High-value files:
|
|
- `src/nvgt.cpp`
|
|
CLI modes/options (`-c`, `-d`, include dirs, platform flags, settings).
|
|
- `src/scriptstuff.cpp`
|
|
Script module/function APIs, profiling/debug hooks, call stack support.
|
|
- `src/tts.cpp`
|
|
Screen reader + TTS object registration.
|
|
- `src/sound.cpp`, `src/sound_nodes.cpp`, `src/sound_service.cpp`
|
|
Sound and audio subsystem behavior.
|
|
- `src/input.cpp`, `src/UI.cpp`
|
|
Keyboard/window/UI interaction behavior.
|
|
- `src/filesystem.cpp`, `src/datastreams.cpp`, `src/serialize.cpp`
|
|
File/stream/serialization behavior.
|
|
|
|
## 4. Samples
|
|
|
|
- `extra/samples/`
|
|
Small scripts demonstrating typical usage.
|
|
Use to confirm common idioms before inventing new patterns.
|
|
|
|
## 5. Build and Packaging
|
|
|
|
- `readme.md`
|
|
Engine build prerequisites and SCons usage.
|
|
- `doc/src/manual/compiling your project for distribution.md`
|
|
Compile + bundle guidance.
|
|
- `build/`, `install/`, `release/`
|
|
Build scripts and packaging infrastructure.
|