How to Use This Book
This book is both a guided learning path and a reference. You can read it from beginning to end, or start with the sections that match what you want to contribute.
Choose a Starting Point
If you are new to programming or contributing to a software project, begin with Part 0. It is a preface that introduces working with coding agents and Git without expecting you to understand Chahua’s code yet. Continue through Parts I, II, and III to learn how the application works, run it locally, and find your way around the repository.
If you already have programming and Git experience, you may skim or skip Part 0. Begin with Part I for Chahua’s architecture, Part II to run the project, or Part III for a repository tour.
If you already know which side of the application interests you, use:
- Part IV for the PWA frontend.
- Part V for the Rust backend.
- Part VI for planning, testing, and submitting a complete contribution.
Even experienced contributors may find it useful to read the high-level application chapters before changing code. They explain the responsibility boundaries shared by the frontend, backend, database, and other clients.
Use the References as You Go
You are not expected to memorize every term or technology. The appendices include:
- A technology primer with short explanations of topics such as HTTP, APIs, databases, and WebSockets.
- A glossary for quickly looking up terminology used throughout the book.
- A command cheat sheet for commands introduced in the guided chapters.
- References for configuration, project conventions, and further learning.
Chapters link to these references when a term needs more context. Follow the link when it helps, then return to the chapter you were reading.
Learn Enough for the Change in Front of You
You do not need to master the entire stack before contributing. Start by understanding what the relevant part of Chahua is responsible for, how it connects to other parts, and how its changes are verified. Learn additional syntax and implementation details as your contribution requires them.
The exercises are opportunities to practice, not tests you must pass. It is fine to follow them with an agent, repeat them, or skip one that covers something you already understand.
This Book Is a Work in Progress
This guide is still being written alongside Chahua. Some chapters may be incomplete, and parts of the application may change faster than the documentation. An unfinished chapter is not an indication that a reader is expected to already know its subject.
When documentation and current project behavior disagree, inspect the repository and running application, then report or correct the outdated guidance. Improving this book is itself a useful way to begin contributing to Chahua.