Repository navigation
DigiShell Beta V0.01 - Public Release
Hey everyone, I'm pretty excited to finally get this out there - DigiShell Beta V0.01 is now publicly available!
So this has been a fun personal project I've been working on for a bit now. Basically, I wanted something simpler to use. FLDIGI is great software, don't get me wrong, but sometimes you just want a neater interface, especially when you're operating from a smaller screen or remotely. That's where DigiShell comes in.
DigiShell is a browser and terminal wrapper for FLDIGI. It's not replacing FLDIGI at all - FLDIGI still does all the heavy lifting with the modems and signal processing. DigiShell just wraps around FLDIGI's XML-RPC interface to give you a simpler way to control it. Think of it as just the essentials for making contacts - modem control, TX/RX, and macros. If you need the waterfall, waterfall clicking, or any of FLDIGI's advanced features, you'll still fire up FLDIGI directly for those.
DO NOT expose DigiShell to the internet. Seriously, don't port forward it or make it publicly accessible. It's not built or secured for that. This is meant for local devices, LAN use, or remote operations through a secured VPN tunnel like Tailscale or OpenVPN.
I still do have lots of work to do for documenting this project, so bare with me as some features and settings aren't documented yet!
What you can do with it:
- Access it from any browser on your LAN or VPN (great for remote stations or field ops)
- Use it from the terminal for terminal setups or SSH sessions
- Run it on small computers and portable setups
- Choose between different themes and layouts to match your preference
- Works on most platforms since it's built with Python
A bit about how this got made:
This project has also been a learning experience for me with Large Language Models. Most of the code was actually written by Claude Code (Anthropic's AI coding assistant), but that doesn't mean I just hit generate and called it done. I spent a lot of time testing everything, debugging weird issues, fixing things that didn't work right, and figuring out how to properly communicate what I wanted to an LLM. It's been multiple iterations of planning, testing, breaking things, fixing them, and learning what works and what doesn't.
I'm being upfront about the AI involvement because I've noticed a lot of projects don't mention it. I think it's important to be transparent about it, but also to clarify that using AI to write code still requires a ton of work on my end to make sure it actually functions properly.
This is a beta release, so expect some bugs and issues. It's a work in progress and I'm still improving it. If you run into problems or have ideas for improvements, feel free to reach out to me.