Rendered at 13:01:28 GMT+0000 (Coordinated Universal Time) with Cloudflare Workers.
vintagevibe 17 hours ago [-]
I'm a DJ/TUI nerd and as much as I want to like this, I don't think the keyboard will ever be the right input or mode for DJing. Maybe my mental model is an outlier, but multi-point physical controls are critical for so much of what's happening while DJing — the master level controls, effects, cueing, individual track controls, and even just being able to physically manipulate playing tracks. It just doesn't map to a TUI, or perhaps more importantly, it just doesn't seem fun. How does the TUI transition this? What makes a TUI the right interface?
kbouck 7 hours ago [-]
some controls lend themselves well to a TUI, others not so much. buttons and pads: no problem. knobs and faders: passable but compromised. jog wheel for scratching: pretty much needs to be controller/midi.
No reason this project couldn't add midi controller support directly to the backend (not via TUI!).
l00sed 17 hours ago [-]
I think for algorave stuff it's great because I'm already at the keyboard, but I totally agree with you otherwise. I was thinking (way too complex at this point) of adding control macros to be able to "turn" 2 knobs at once, because that's something real hands and knobs can do, but not this TUI atm.
citruscomputing 16 hours ago [-]
I mean, you theoretically still could have that, USB decks send MIDI signals (even though I found it a bit obtuse trying to get my FLX4 to control anything except VirtualDJ - I was trying to map it to grandMA lighting controls). The TUI here could be primarily a presentation layer. I think the main benefits would be a) more hackable than VirtualDJ and b) it looks cool.
l00sed 15 hours ago [-]
Totally! I'd love to work that in somehow
fragmede 12 hours ago [-]
Get something like the M-brio midi CC controller and have it output keyboard keys into the terminal.
Regardless, you might be able to use my timestretch library: https://github.com/robmorgan/timestretch-rs - it's still very early, but it's working for alot of my use cases, and it's pure Rust.
redgrekaud 9 hours ago [-]
[flagged]
dragginguija 9 hours ago [-]
[flagged]
walrus01 14 hours ago [-]
Feature request: ASCII llama and original winamp intro audio file
the constraints of a TUI force you to be creative (in a good way) how to represent/encode information to the user.
In a DJ TUI, how to represent the track waveform? Encoding waveform amplitude in ascii blocks or dots is a pretty low fidelity representation. Instead, you can encode waveform amplitude in single row of blocks with 256 color/intensity averaging the backing sample peaks.
And's if you ever do stems separation you have 4 such rows for each track - efficient and dense!
As the track is playing, or user is zooming or jogging, this representation would give more of the feel that the playhead is moving through the track smoothly.
tosti 18 hours ago [-]
Finally, I can ssh to the booth from a tablet and take a dump mid-party.
yeah it's pretty cool. you can also use it as a regular music player. if you toggle autoplay, it will automatically keep playing the next track in your track list. supports uploading local libraries and youtube, and recording, uploading and sharing mixes.
my mind jumps to termite/pest control companies like terminix
lopoman 13 hours ago [-]
Aww I was lowkey expecting something like Mixxx but with a tui-like interface where I can connect my Dj board on the fly.
distortionfield 17 hours ago [-]
Honestly this seems like it would be a sick party trick. Combine with some strudel.cc and it could be pretty cool little setup.
l00sed 17 hours ago [-]
Exactly! And ghostty shaders!!
LeSaucy 18 hours ago [-]
Rekordbox/serato this is not.
grvdrm 16 hours ago [-]
Both suck. I think the entire industry would dump Rekordbox, but it is the tool the matches the CDJs.
gchamonlive 18 hours ago [-]
Kind of the point
alchemism 17 hours ago [-]
Cool! Plz do VJing next
l00sed 17 hours ago [-]
I was thinking of doing something like aaa (ASCII art animation) to play videos in the pads section...
erikschoster 18 hours ago [-]
I guess this is a boring and predictable thing to say, but I miss seeing a project like this and being excited about it. Instead I looked at the codebase, see that it seems LLM-generated and assume it hasn't had much thought or care put into it, so I'm not really motivated to even try it out. Sorry. :-/
tim-projects 2 hours ago [-]
> see that it seems LLM-generated and assume
Do not assume that just makes you a jerk.
LLM use has nothing to do with thought or care in the same way that using a stencil doesn't.
Stop thinking your pencil is better than his stencil. It has nothing to do with design or creativity.
l00sed 17 hours ago [-]
I'll come out and say it, heavily AI-assisted. First rust project, and wanted to dive on in with something that I'd been wanting to make. Lots of iteration, almost entirely free opencode tier models and agentic edits. I know what behavior I'm looking for though, and rust is pretty good at finding obvious errors (clippy too). It's not a production app, and it's just for fun, so ya. :)
mikestorrent 17 hours ago [-]
Perhaps one needs to go a level up: if making the program is now semi-trivial, it remains to be proven if using the program to actually perform is. If I have a Star Trek replicator that can reproduce a perfect Stradivarius for me, is it any less impressive when I play a beautiful song on it?
If we want to get excited about a mixing board... we probably need to see someone using it in ways that traditional mixers don't facilitate.
saidnooneever 8 hours ago [-]
exactly this. Id think the main thing for this would be to get midi controllers working. its a digital tool for digital djs. looks a bit niche ofc if you look at 'the market' etc. but as OP said for newer thigs like algorave and just for fun it looks pretty cool :D.
id love this workin on a phone with a little usb-c midi controller attached!
iamjackg 17 hours ago [-]
> assume it hasn't had much thought or care put into it
> I'm not really motivated to even try it out
That's a little uncharitable. I get where it's coming from, because I also still feel a tinge of (hypocritical) disappointment when I realize things are built with LLMs, but I truly think we need to start moving past this. It's not a giant corporation trying to scam you out of your hard earned money by passing slop off as a lovingly crafted product: it's somebody's pet project, somebody who clearly had a fun "what if" idea and was able to materialize it over time, with a TBD amount of care/iteration/refinement. I think it's something worth engaging with. Worst case scenario it sucks, like many cheapo projects do -- best case scenario it's awesome and/or it sparks a new interesting idea in somebody else.
kelseyfrog 17 hours ago [-]
Does it do what it says on the tin? If so, does it matter that it's made with an LLM?
In my own experience, LLMs+TUIs are surprisingly effective. They deal with the tedium of ncurses development much more than I can. It took an LLM about an hour to put a TUI over recutils so that I can monitor task progress. I doubt I could have done the same that shortly. My point is, 'that it works' is much more important to me than how it works.
rvz 17 hours ago [-]
You’re going to be disappointed to see a continuous deluge of even more slop on Show HN.
No reason this project couldn't add midi controller support directly to the backend (not via TUI!).
Regardless, you might be able to use my timestretch library: https://github.com/robmorgan/timestretch-rs - it's still very early, but it's working for alot of my use cases, and it's pure Rust.
https://democyclopedia.wordpress.com/wp-content/uploads/2017...
In a DJ TUI, how to represent the track waveform? Encoding waveform amplitude in ascii blocks or dots is a pretty low fidelity representation. Instead, you can encode waveform amplitude in single row of blocks with 256 color/intensity averaging the backing sample peaks.
And's if you ever do stems separation you have 4 such rows for each track - efficient and dense!
As the track is playing, or user is zooming or jogging, this representation would give more of the feel that the playhead is moving through the track smoothly.
https://github.com/termix-ssh/termix
Do not assume that just makes you a jerk.
LLM use has nothing to do with thought or care in the same way that using a stencil doesn't.
Stop thinking your pencil is better than his stencil. It has nothing to do with design or creativity.
If we want to get excited about a mixing board... we probably need to see someone using it in ways that traditional mixers don't facilitate.
id love this workin on a phone with a little usb-c midi controller attached!
That's a little uncharitable. I get where it's coming from, because I also still feel a tinge of (hypocritical) disappointment when I realize things are built with LLMs, but I truly think we need to start moving past this. It's not a giant corporation trying to scam you out of your hard earned money by passing slop off as a lovingly crafted product: it's somebody's pet project, somebody who clearly had a fun "what if" idea and was able to materialize it over time, with a TBD amount of care/iteration/refinement. I think it's something worth engaging with. Worst case scenario it sucks, like many cheapo projects do -- best case scenario it's awesome and/or it sparks a new interesting idea in somebody else.
In my own experience, LLMs+TUIs are surprisingly effective. They deal with the tedium of ncurses development much more than I can. It took an LLM about an hour to put a TUI over recutils so that I can monitor task progress. I doubt I could have done the same that shortly. My point is, 'that it works' is much more important to me than how it works.