3.1 Introduction
Engineering standards give Moonitoring a shared way to design, build, and maintain software. They turn recurring choices into recognizable conventions, reducing ambiguity and making collaboration easier across projects.
Following these standards should allow any team member to enter an unfamiliar Moonitoring codebase and understand how it is organized, how its code is written, and what behavior to expect from the surrounding development process.
3.1.1 Engineering Standards Guide¶
Use these pages as a reference while creating a project or working inside an existing one.
-
Repository Standards
Learn how repositories are named, divided between monorepo and polyrepo strategies, and how the code inside a package is organized.
-
Coding Standards
Follow the shared rules for formatting, indentation, and naming.
-
Logging & Observability
Make systems understandable in production through Logging & Observability Standards.
-
Error Handling
Keep failures consistent and actionable by following Error Handling.
-
Releases & Versioning
Prepare and communicate changes using Releases & Versioning.
-
Programming Languages
Pick the language for the kind of work, with the toolchains in Programming Languages.
-
Programming Patterns
Shape the code inside that structure with the Programming Patterns: domain-driven design, dependency injection and encapsulation.
-
Public Web Pages
Make every public page found and shared well, with the rules for addresses, languages, link previews and speed in Public Web Pages.