Code Monkey home page Code Monkey logo

etude's Introduction

etude

etude is a music theory library focused on the fundamentals of music.

  • Deterministic: All concepts covered by etude are outlined by nonrandom rules. This means etude cannot analyze a chord progression or develop a complex melody. However, it can tell you the pitches for a chord or the intervals between the notes of a melody.
  • Immutable: etude objects are not only immutable but also strongly immutable to enforce immutability with inheritance. You can learn about the benefits of immutability here.
  • MIDI-compatible: etude follows the MIDI standards.

Requires Java 1.8.

Links

Ports

All official ports will follow the same major and minor version increments.

Official

JavaScript (TypeScript): etude.js.

Installation

From Maven Central

Gradle
dependencies {
  compile "com.github.andrewthehan:etude:3.0.0"
}
Maven
<dependency>
  <groupId>com.github.andrewthehan</groupId>
  <artifactId>etude</artifactId>
  <version>3.0.0</version>
</dependency>

Local Jar

Download the jar.

Gradle
dependencies {
  compile files("path/to/file/etude-3.0.0.jar")
}
Maven
<dependency>
  <groupId>com.github.andrewthehan</groupId>
  <artifactId>etude</artifactId>
  <version>3.0.0</version>
  <scope>system</scope>
  <systemPath>path/to/file/etude-3.0.0.jar</systemPath>
</dependency>
CLI

Add the file to the class path. (See Setting the Class Path)

Development

Requirements

Build

Clone the repo.

git clone https://github.com/andrewthehan/etude.git

Build and run tests.

gradle build

Contributions

Any contributions towards documentation, bug fixes, TODO features are welcome. If you wish to implement a feature that is not listed in the TODO section, please submit an issue first.

When fixing bugs or implementing new features, please add accompanying tests.

TODO

Made with etude

If you made something cool with etude, feel free to add your project here.

etude's People

Contributors

andrewthehan avatar

Stargazers

Valeriy Zhirnov avatar Joe D avatar Emma Li avatar Jonathan avatar

Watchers

James Cloos avatar Jonathan avatar  avatar

Forkers

sydthackerr

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.