Development guide for Crosswords
This is the development guide for Crosswords and Crossword Editor. It will help you understand how the applications fit together and how best to work with the codebase.
For information on building and running the apps, read these instructions
Bugs should be reported to the bugtracking form on GNOME gitlab
The codebase is a little complex. Here are some guides to help understand how it all fits together:
Crosswords overview — guide to the main game
Crosswords Editor overview — guide to the editor
Shared code overview — guide to code shared between the two applications
Naming disambiguation — guide to understanding source code file names
Please keep a consistent coding style throughout the code base:
TODO: Testing guide
The more complex sections of the code have their own documentation to describe how they work. These started as design proposals, and graduated to be designs once they were implemented.
We write a design document before we write non-trivial sections of code. This is so we can discuss issues before coding, and have a big-picture development history that’s separate from the commit messages. If you’d like to extend this project in a non-trivial way, please submit a design doc MR before you begin coding.
TODO: CI documentation