Menu
ARCHITECTURAL Decision Log
Architectural Decision Log
This Architectural Decision Log consists of Architectural Decision Records (ADRs) that cover various aspects of the FrankenScore project, from high-level design decisions to specific technical choices:
- ADR-0000: Choice of Clojure as the Primary Programming Language
- ADR-0001: Separation of Frontend and Backend into Distinct Clojure Applications
- ADR-0002: Adoption of gRPC for Communication Between Frontend and Backend
- ADR-0003: Integration of Plugins as a Core Architectural Component
- ADR-0004: Implementation of Software Transactional Memory (STM) for Concurrency
- ADR-0005: Selection of JavaFX and Skija for the Frontend GUI
- ADR-0006: Adoption of SMuFL (Standard Music Font Layout) for Music Notation
- ADR-0007: Implementation of Nippy for File Persistence
- ADR-0008: Implementation of Vector Path Descriptors (VPDs)
- ADR-0009: Implementation of Real-Time Collaborative Features
- ADR-0010: Trees & Circles
- ADR-0011: Shared Structure
- ADR-0012: Persisting Pieces
- ADR-0013: Slur Formatting
|
FrankenScore is a modern, open-source music notation software designed to handle complex musical scores with ease. It is designed to be a flexible and powerful music notation software tool providing professional, extremely high-quality results. The core functionality includes inputting music notation, formatting scores and their parts, and printing them. Additional features can be added as plugins, allowing for a modular and customizable user experience.
|