# Chart specification - [About this specification](https://chart-spec.enchor.us/index.md): What this specification covers, and the words it uses. - [Files in a song folder](https://chart-spec.enchor.us/song-folders.md): The files a song folder holds, their names and formats, and which one a scanner uses when there are several. - [.sng files](https://chart-spec.enchor.us/sng.md): A song folder packed into one file: its layout, its metadata, and the files it holds. - [Syntax](https://chart-spec.enchor.us/chart/syntax.md): The structure of a .chart file: its encoding, sections, lines, and events. - [[Song]](https://chart-spec.enchor.us/chart/song.md): The metadata and resolution in a .chart file's [Song] section. - [[SyncTrack]](https://chart-spec.enchor.us/chart/sync-track.md): Tempo markers and time signatures in a .chart file. - [[Events]](https://chart-spec.enchor.us/chart/events.md): Practice sections, lyrics and other song-wide text events in a .chart file. - [Instrument sections](https://chart-spec.enchor.us/chart/instrument-sections.md): The section names for each instrument and difficulty, and their note values. - [Note modifiers](https://chart-spec.enchor.us/chart/modifiers.md): Forcing and taps in a .chart file. - [Phrases](https://chart-spec.enchor.us/chart/phrases.md): Star power, solos, lanes and drum fills in a .chart file. - [Drums](https://chart-spec.enchor.us/chart/drums.md): Drum types, and the pads, cymbals, accents, ghosts, double kicks, flams and disco flip of a .chart drums section. - [How notes resolve](https://chart-spec.enchor.us/chart/note-resolution.md): How a .chart file's notes become the notes a player plays. - [Structure](https://chart-spec.enchor.us/mid/structure.md): The layout of a .mid file: its header, tracks and track names, resolution, tempo map and text. - [EVENTS track](https://chart-spec.enchor.us/mid/events.md): Practice sections, the coda, the song's end and other song-wide text events in a .mid file. - [Instrument tracks](https://chart-spec.enchor.us/mid/instrument-tracks.md): The track names, and the note numbers for each instrument and difficulty, in a .mid file. - [Note modifiers](https://chart-spec.enchor.us/mid/modifiers.md): Forcing, taps and open notes in a .mid file, and how its natural HOPOs differ from a .chart file's. - [Phrases](https://chart-spec.enchor.us/mid/phrases.md): Star power, solos, lanes and drum fills in a .mid file. - [Drums](https://chart-spec.enchor.us/mid/drums.md): Drum types, and the pads, toms, accents, ghosts, double kicks, flams and disco flip of a .mid drums track. - [Vocals and harmonies](https://chart-spec.enchor.us/mid/vocals.md): Vocal notes, lyrics, phrases and harmonies in a .mid file. - [Note pairing](https://chart-spec.enchor.us/mid/note-pairing.md): How note-on and note-off events pair into notes in a .mid file, and how long each note is. - [Syntax](https://chart-spec.enchor.us/ini/reading-rules.md): The structure of a song.ini file: its section, its lines, the order of its keys, and the forms of its values. - [Metadata](https://chart-spec.enchor.us/ini/metadata.md): The song.ini keys that describe a song and place it in the song list, and how to write each value. - [Settings](https://chart-spec.enchor.us/ini/settings.md): The song.ini keys that change how a song plays: the drum type, sustains, chords and the background video, and the older keys that still do. - [Charting guidelines](https://chart-spec.enchor.us/charting-guidelines.md): How to make a chart that plays well and is easy to share: its audio and art, its timing, its difficulties, its notes and its phrases. - [Converting between .chart and .mid](https://chart-spec.enchor.us/converting.md): What each format can't hold, and what an exporter writes when it converts a chart. - [Differences from GuitarGame_ChartFormats](https://chart-spec.enchor.us/differences.md): Where this specification differs from GuitarGame_ChartFormats, and why. - [BTrack and TrackHash](https://chart-spec.enchor.us/hashes/btrack.md): The binary form of one track, and the hash that identifies its leaderboard. - [SongHash](https://chart-spec.enchor.us/hashes/songhash.md): The hash that identifies a song on the leaderboards: its metadata, its length and its TrackHashes. - [BTrack 20240320 (obsolete)](https://chart-spec.enchor.us/hashes/btrack-20240320.md): The older BTrack format and TrackHash that Clone Hero 1.1 calculates. - [scan-chart](https://chart-spec.enchor.us/scan-chart/index.md): The TypeScript library that reads and writes song folders to this specification. - [Nonstandard files](https://chart-spec.enchor.us/scan-chart/nonstandard-files.md): What scan-chart reads in a .chart file that doesn't follow the standard, and how it saves it. This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.