OOLOI.ORG
Menu

FRANKENSCORE

A Body Resurrected.

OVERVIEW

DOCUMENTATION

Contributing to Ooloi

30/3/2025

0 Comments

 
Picture
One of the central design principles behind FrankenScore/Ooloi is modularity. There is a small core, written in Clojure, and then there are plugins  which can be written in any JVM language such as Java,  Kotlin, Scala, JRuby, Jython, etc.

This architecture has far-reaching consequences for contributors. For instance, the open-source core can be contributed to and extended natively in Clojure – which expert Clojurians will appreciate. This way, contributors have full access to all aspects of the core engine.

But if you instead want to contribute to Ooloi using its plugin architecture, you can use any JVM language and production methodology. The API you'll be using lets you focus entirely on the musical task to be accomplished. You don't even have to know about things like transactions, concurrency, or memory management. You can safely work with the powerful musical abstractions the API gives you and let the efficient engine handle the rest.

And commercial entities will also appreciate that Ooloi's plugin mechanism supports paid, close-source plugins.

And as there is no loss in efficiency or speed, much of the Ooloi functionality will be implemented using plugins, including advanced playback, MusicXML support, virtual instruments, tablature, jazz notation, and much more. 

Read more about it in the updated and extended Development Plan.

0 Comments



Leave a Reply.

    Author

    Peter Bengtson –composer, organist, programmer, cloud architect. Currently windsurfing through parentheses.

    View my profile on LinkedIn

    Archives

    April 2025
    March 2025
    September 2024
    August 2024
    July 2024

    Categories

    All
    Architecture
    Clojure
    CLOS
    Common Lisp
    Documentation
    Finale
    FrankenScore
    Franz Kafka
    Functional Programming
    Generative AI
    Igor Engraver
    Jacques Derrida
    JVM
    Lisp
    Ooloi
    Python
    Rich Hickey
    Road Map
    Scheme
    Sibelius
    Site

    RSS Feed

Home
​Overview
Documentation
About
Contact
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.​
  • Home
  • Overview
    • Background and History
    • Project Goals
    • Introduction for Musicians
    • Introduction for Programmers
    • Introduction for Anti-Capitalists
    • Technical Comparison
  • Documentation
    • Architectural Decision Log >
      • Choice of Clojure
      • Separation of Frontend and Backend
      • Adoption of gRPC
      • Plugins
      • STM for Concurrency
      • JavaFX & Skija
      • SMuFL
      • Nippy
      • Vector Path Descriptors
      • Collaborative Features
      • Trees and Circles
      • Shared Structure
      • Persisting Pieces
      • Slur Formatting
    • Backend src README
    • Development Plan
    • License
    • Code of Conduct
  • About
  • Contact
  • Home
  • Overview
    • Background and History
    • Project Goals
    • Introduction for Musicians
    • Introduction for Programmers
    • Introduction for Anti-Capitalists
    • Technical Comparison
  • Documentation
    • Architectural Decision Log >
      • Choice of Clojure
      • Separation of Frontend and Backend
      • Adoption of gRPC
      • Plugins
      • STM for Concurrency
      • JavaFX & Skija
      • SMuFL
      • Nippy
      • Vector Path Descriptors
      • Collaborative Features
      • Trees and Circles
      • Shared Structure
      • Persisting Pieces
      • Slur Formatting
    • Backend src README
    • Development Plan
    • License
    • Code of Conduct
  • About
  • Contact