Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sustained/die-sonaten
An interactive experience about the 32 Beethoven piano sonatas.
https://github.com/sustained/die-sonaten
animation beethoven classical javascript music open-source piano romantic sonata visualisation vue vuejs
Last synced: about 2 months ago
JSON representation
An interactive experience about the 32 Beethoven piano sonatas.
- Host: GitHub
- URL: https://github.com/sustained/die-sonaten
- Owner: sustained
- Created: 2019-08-24T13:15:29.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2023-01-04T08:03:18.000Z (almost 2 years ago)
- Last Synced: 2023-08-06T03:53:35.931Z (over 1 year ago)
- Topics: animation, beethoven, classical, javascript, music, open-source, piano, romantic, sonata, visualisation, vue, vuejs
- Language: Vue
- Homepage:
- Size: 2.82 MB
- Stars: 3
- Watchers: 2
- Forks: 1
- Open Issues: 24
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# die-sonaten (the-sonatas)
An interactive experience about the 32 Beethoven piano sonatas.
![](/docs/sample.png)
- [Why make this?](#why-make-this) (RATIONALE)
- [What does it do?](#what-does-it-do) (EXPLANATION)
- [Can I use your...?](#can-i-use-your) (RIGHTS/LICENSE)
- [How do I run this?](#how-do-i-run-this) (INSTALLATION/SETUP)# Why make this?
The 32 Beethoven Sonatas are some of my favourite things in the world.
1. I quite simply want to create something that relates to them.
2. I would like to be able to better make use of animations, transitions and so on.
3. Lately I have been trying to improve my German.This project then is just something which relates to those three points.
---
Die 32 Beethoven Sonaten sind einige meiner Lieblingssachen.
1. Etwas im Zusammenhang mit die will ich ganz einfach erstellen.
2. Ich möchte auch besser animations, transitions und so weiter benutzen können.
3. In letzer Zeit habe ich mein Deutsch verbessern versuchen.Diese Projekt ist also nur etwas, das sich alle drei Punkte bezieht.
# What does it do?
So far it just parses some JSON and displays a fancy grid and that's it.
The data I have so far for each sonata is:
- (musical) key
- opus/number
- avg. duration
- nickname (if applicable)
- when it was composed and published
- the movements and their
- names
- keys
- time signaturesThe data I don't have yet or am still collecting/compiling:
- the (musical) themes (in MIDI and SVG format)
- interesting anecdotes and such that musicians/historians have to say about the sonatasSoon it will display this information in a variety of interesting and hopefully rather flashy ways.
# Can I use your...?
Feel free to use:
- the `.hjson` files in `data/sonatas` or the resulting compiled `.json` files in `src/data/sonatas`
- the `.mscz` files in `scores/`Once it exists, also feel free to use the `.midi` files and the `.svg` files (of the themes).
Consider the rest unlicensed for now, but maybe I'll open-source it eventually.
# How do I run this?
## Installation
```
npm install
```## Compile sonata data
> **NOTE:** You must manually compile the JSON whenever you change the HJSON source files.
```
npm run compile-json
```## Run development server
```
npm run serve
```## Build for production
```
npm run build
```### Test production build
```
npx http-server dist
```