Contributing
Welcome to the Wayd developer documentation. This section covers everything you need to know to contribute to the codebase.
Development Setup
- Prerequisites — Required software and tools
- Installation — Clone, build, and run the application
- Configuration — Database, authentication, and environment setup
- Entra App Registration Setup — Azure-side setup for Microsoft Entra ID sign-in
- First-Run Setup — Creating the first administrator account on a fresh deployment
- Local Development — Day-to-day development workflow
Development Guide
- Architecture — System design, Clean Architecture, and DDD patterns
- Domain Events — Designing, wiring, and versioning events, and the activity log
- Coding Standards — Code conventions, naming, and best practices
- Branches and Commits — Branch names, commit messages, scopes, and the git hooks that check them
- Testing — Testing strategies, patterns, and running tests
- Adding a Feature — Step-by-step guide for implementing new features
- Database & Migrations — Database patterns, migrations, and EF Core usage
- Frontend Development — Next.js, React, and Ant Design patterns
- Record Pages — The standard structure for every list and detail page
- WaydGrid — Using the house data-grid component (filtering, sorting, pinning, reordering, persistence, tree mode)
- API Development — API endpoint patterns and conventions
- MCP Server — Changing and releasing the
@wayd/mcppackage, and the changeset every shipped change needs
Tools
- Data Generation (
wayd-data) — Generate a realistic organization and seed it into a Wayd environment through the public HTTP API
Migration
- Migrating from Moda — One-time steps for developers who had a working local Moda environment before the rename