A music composer and song learning webapp made for the games Genshin and Sky Cotl. Made with Next.js, WebMIDI, WebAudio, pixi.js
Last updated Jun 24, 2026
195
Stars
45
Forks
5
Issues
0
Stars/day
Attention Score
47
Language breakdown
TypeScript 91.6%
CSS 5.8%
JavaScript 1.3%
SCSS 1.3%
Rust 0.0%
โธ Files
click to expand
README
Welcome to Genshin music and Sky music nightly
This repository holds the code of the two music apps for Genshin and Sky Cotl, you can see the published apps at specy.app
Looking for help in translation
I'm looking for people who could help me translate the app to other languages, if you are interested, look at the translation discussion hereHow to run in dev mode
You need node.js installed on your computer, you can get it here. Then clone the repo to a folder and install the dependencies withnpm i, once installed, run the development server with npm run start
There are 4 more scripts which might be useful, run as a specific app and build as a specific app.
You can run npm run dev:sky or npm run dev:genshin, this will run the webapps for the specific game and swap the assets.
How to run desktop app in dev mode
You need to first start the development server, look here for how to do that. Then you can runnpm run start-tauri
How to build
You can use the scriptsnpm run build:genshin and npm run build:sky which will build the correct app, or npm run build:all to build both
How to build desktop app
I advise not to use the desktop app as it's not developed much, it was mostly a proof of concept, use the webapp instead. The app uses tauri for the desktop bundle which is a sandboxed webview. You can build it by usingnpm run build-tauri:genshin, npm run build-tauri:sky, npm run build-tauri:all. The config is premade to allow for changelog, if you dont have a signing key, the build will fail. If you want to build without changelog, go to src-tauri/tauri.conf.json and set updater to false
Documentation
You can find the documentation of the app here It is not very detailed but might help to understand how the format works.How to contribute
Make a new issue saying what you want to work on and wait for me to assign the issue. This way we can also communicate whether or it would be a valid issue to fix/addREADME.MD
English | ็ฎไฝไธญๆ | ๆฅๆฌ่ช | Tรผrkรงe | Indonesian๐ More in this category