Babali42/DrumBeatRepo

Music : Contribute to the library - Add beats - New genre or subgenres !

Open

#270 opened on Jan 7, 2026

View on GitHub
 (0 comments) (0 reactions) (0 assignees)TypeScript (8 forks)auto 404
good first issuehelp wantedmusic

Repository metrics

Stars
 (23 stars)
PR merge metrics
 (PR metrics pending)

Description

Beat ideas

  • Reggae
  • Hip Hop
  • Shatta
  • Jazz
  • Bouyon
  • Baile Funk
  • Feel free to propose items to add to this list

How to add a beat :

  • Add a new .json file in the assets/beats/GENRE folder
  • Define genre, subgenres, samples, tracks and patterns in the file :
  {
  "label": "Half time groove",
  "genre": "Metal",
  "bpm": 145,
  "tracks": [
    {
      "name": "Snare",
      "fileName": "metal/snare.mp3",
      "steps": "        X       "
    },
    {
      "name": "Crash",
      "fileName": "metal/crash.mp3",
      "steps": "X   X   X   X   "
    },
    {
      "name": "Kick",
      "fileName": "metal/kick.mp3",
      "steps": "X               "
    }
  ]
}
  • Sounds samples are here (try mix them !)
  drum-n-bass
    hat.wav
    kick.wav
    snare.wav
  dub
    arpeggio_si.wav
    bass.wav
    closed-hat.wav
    kick.wav
    pattern (bitinvader=bass et SID=arpeggio).png
    skank.wav
    snare.wav
    sub.wav
  ebm
    clap.wav
    closed-hihat.wav
    kick.wav
    open-hihat.wav
    snare.wav
  gabber
    clap.wav
    crash.wav
    kick.wav
    kick.wav.asd
    open-hihat.wav
  jersey-club
    kick.mp3
    snare.mp3
    squeak_high.mp3
    squeak_low.mp3
  metal
    crash.mp3
    crash.wav
    hat.mp3
    hat.wav
    kick.mp3
    kick.wav
    snare.mp3
    snare.wav
  psytrance
    bass.wav
    closed-hat.wav
    kick.wav
    open-hat.wav
    snare.wav
  techno
    hat.wav
    kick.wav
    snare.wav
  • Add your files in this string list
  loadAllJson(): Observable<CompactBeat[]> {
    let files = ['techno/techno.json', 'techno/off-beat-clap.json'];
    files = files.concat('metal/metal.json', 'metal/metal-blastbeat.json', 'metal/half-time-groove.json');
    files = files.concat('rock/rock.json', 'rock/variation.json');
    files = files.concat('punk/punk-beat-quarter-note-groove.json', 'punk/punk-beat-quarter-note-groove-variation.json', 'punk/punk-beat-eight-note-fill.json');
    files = files.concat('psytrance/psytrance.json');
    files = files.concat('dancehall/standard.json');
    files = files.concat('techno-hardcore/gabber.json');
    files = files.concat('dub/dub.json');
  • cd frontend
  • npm i
  • npm run start
  • Verify the beat
  • Open a PR !

Contributor guide