renamed scan.py -> build.py

Hunter
Monday, February 16th, 2026 at 11:32 AM

scan.py -> build.py  
generate_manifests.py+1-1
mix/readme.md+1-1
readme.md+1-1
rip.py+1-1

scan.py -> build.py
generate_manifests.py
114  
115  	# Load tracks.json
116  	if not TRACKS_JSON.exists():
    -		print("Error: tracks.json not found. Run scan.py first.")
117 +		print("Error: tracks.json not found. Run build.py first.")
118  		return
119  
120  	with open(TRACKS_JSON, 'r', encoding='utf-8') as f:
mix/readme.md
1  # /mix
2  
  -add your audio files here, then run `scan.py` to create `tracks.json`.
3 +add your audio files here, then run `build.py` to create `tracks.json`.
4  
5  supported formats: `.mp3`, `.m4a`, `.ogg`, `.flac`, `.wav`
6  
readme.md
40  	- add your audio files to the `/mix` directory, or use:
41  		- `./rip.py` to rip tracks from a physical CD
42  		- `./buy.py` to search for songs to purchase (opens in iTunes on MacOS, <a href="https://song.link/i/1651294855">song.link</a> otherwise)
   -	- run `./scan.py` to parse `/mix` and populate `tracks.json`, which defines the songs available to the player. after running `./scan.py` once, you can manually edit `tracks.json` to refine your mix.
43 +	- run `./build.py` to parse `/mix` and populate `tracks.json`, which defines the songs available to the player. after running `./build.py` once, you can manually edit `tracks.json` to refine your mix.
44  	- optionally, add an `album_art.jpg` to `/mix` to set the cover art for your mix.
45  	- supported audio formats: `.mp3`, `.m4a`, `.ogg`, `.flac`, `.wav`
46  
rip.py
363  	if success_count > 0:
364  		print(f"\nTracks saved to: {MIX_DIR}")
365  		print("\nNext steps:")
    -		print("  1. Run scan.py to generate tracks.json with metadata")
366 +		print("  1. Run build.py to generate tracks.json with metadata")
367  		print("  2. Run host.py to test your mixtape locally")
368  
369  		# Eject the CD