Skip to content

Synapse Studios Development Documentation ​

This repository contains comprehensive documentation for development practices, design guidelines, and best practices at Synapse Studios.

Documentation Structure ​

Our documentation is organized into two main categories:

📚 Concepts ​

Foundational knowledge - the "what" and "why" behind our practices

Architecture ​

ArticleDescription
Coupling and CohesionThe fundamental forces that shape software architecture
Clean ArchitectureThe architectural philosophy that guides system design at Synapse
Modular MonolithBuilding well-structured single applications ready to evolve
Dependency Inversion & Ports/AdaptersBuilding flexible, testable systems through dependency inversion

Patterns ​

ArticleDescription
Use CasesApplication-specific business rules and orchestration patterns
RepositoryAbstracting data persistence with domain-focused interfaces
Page ObjectAbstracting UI interactions through declarative, reusable test components

Testing ​

ArticleDescription
Unit TestingPragmatic approaches to unit testing focused on design feedback
Test-Driven DevelopmentUsing TDD as a tool for running and validating code as you write it
Backend Integration TestingTesting strategies for databases, APIs, and external services
Frontend TestingComponent, interaction, and visual testing for UI applications
Acceptance TestingBusiness-focused testing with layered architecture

CI/CD ​

ArticleDescription
Continuous IntegrationIntegrating work frequently with automated verification
Continuous DeliveryEnsuring software is always deployable through automated pipelines

Practices ​

ArticleDescription
Code SmellsSurface signals of deeper design problems, from Fowler and Martin
PostmortemsBlameless investigations that help teams learn from failures
Formal Postmortem TemplateTemplate for comprehensive analysis of critical incidents

🔧 Implementation ​

Practical guides - the "how" of applying concepts in specific technologies

Frameworks ​

ArticleDescription
NestJS Implementation GuideComplete guide to building NestJS applications with Clean Architecture
React Design GuidelinesComponent design patterns and UI/UX standards for React applications
Next.js Best PracticesConfiguration, optimization, and development practices for Next.js applications
Vite Best PracticesConfiguration, optimization, and development practices for Vite-based React applications

Testing ​

ArticleDescription
Acceptance Testing GuidelinesEnd-to-end and integration testing strategies
NestJS API Testing GuidelinesTesting strategies for NestJS backend APIs
React Testing GuidelinesTesting strategies and practices for React applications

CI/CD ​

ArticleDescription
Multi-Stage Pipeline with GitHub ActionsComplete guide to implementing deployment pipelines using GitHub Actions workflows
Deploying to AWS ECSECS deployments with colocated task definitions, blue-green strategies, and cross-account deployment patterns

Code Quality ​

ArticleDescription
Code SmellsSurface signals of deeper design problems, from Fowler and Martin

Usage ​

This documentation repository is designed to be consumed by coding agents and development teams to standardize and enforce best practices across all Synapse Studios projects.