DMR.Tools: Backend server work started

Tue Feb 2, 2021

I’ve broken ground on the backend server for DMR.Tools and ProgramRadios.com.

My plans right now are to include:

FCC database integration for automatic codeplug generation for commercial users.

A little space for codeplug storage so you can edit a codeplug on a laptop, and then upload it to a radio on your mobile phone. I’m thinking ham codeplugs will be world readable, and commercial codeplugs will not be.

Integration of the various ham radio DMR repeater and contact databases.

Eventually, a way to publish a codeplug or other data for others to use (like for a club to publish a recommended codeplug for an area).

And of course a way to report errors, and a way to tie into Stripe subscriptions.

I’m wondering how I can make enough money with this to continue working on it (instead of burning my savings) - and how to make money with it and still contribute back to open source.

I was looking at the SSPL (Server Side Public License), and it is appealing. It seems to be exactly in line with the spirit and intentions of GPL by my reading. AGPL is another contender, but I’m not sure it goes far enough, and GPL is clearly insufficient for the SaaS models.

All that said, I’m hoping I can make something workable through a convenience model, and keep the code open so it’s easy to self-host for field day and for when the internet quits.

Alternatively, I could sell/license offline versions, or provide source only to paying customers under a license like the SSPL.

This would help manage concerns about “what happens if dmr.tools disappears”, which is something I care about deeply and assume others will also.

Anyway: So far, I have a simple user model and API, and a simple codeplug REST API. I have a small proof of concept of using each on the frontend.

I want to make mobile apps and offline versions of the program, so the frontend is completely separate from the backend and just communicates over the REST APIs, which I figure will make future development a little easier.