Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

tomschlick's avatar

Just launched my spark app: ZoneWatcher

Hopefully a little self promotion here isn't a bad thing...

I just launched my spark based app ZoneWatcher. It allows you to backup and monitor DNS record changes for all of your domains across the most popular DNS providers.

The idea came about because at work we manage DNS for a lot of clients' domains. Every so often a client / contractor would change one of those clients' DNS records without us knowing and cause all kind of trouble as we scrambled to figure out what to change it back to. This actually happened to me at Laracon US this year and I had to leave the big after party for 40 minutes to fix a bad MX record change. That was the catalyst for me to actually go ahead and create this thing.

So what does this thing do? After you signup and authenticate with your DNS provider (Digital Ocean, Linode, AWS Route 53, GoDaddy, Cloudflare, or Google DNS) it sits in the background and makes a copy at a certain interval based on your plan. If records have changed you/your team get an instant email notification (slack coming soon). From there you can check out the log and see a github style diff of what changed.

It's built with a bunch of the common packages such as Socialite + drivers for DO, Google, etc. For the queues it uses Laravel's beanstalkd driver, mail is handled by MailGun, and the server is powered by Forge.

I just want to thank everyone on this forum for all of the posts you have made. Every time I had an issue with Spark I'd take a look here and someone would already have it solved!

If you want to signup, ZW has a free plan that allows 1 domain free forever.

If you need more domains they start at $2/mo for 12 domains. For being the awesome community that laravel is, here is a coupon code for 50% off the first purchase (either yearly or monthly): 50FORLARACASTS

Thanks again and I'd be happy to answer any questions!

0 likes
10 replies
tomopongrac's avatar

Looks great :)

one sugestion ... it would be nice to have contact form instead of mailto:

2 likes
tomschlick's avatar

Yeah thats a good point! I'll get that in there :)

tomschlick's avatar

Thanks! It feels good to get the project out there!

Definitely a scary few hours until I saw some people actually sign up and find it useful.

t0ne's avatar

Hi @tomschlick,

Saw your laraconus 2017 speech, very helpful!

I hope you will help me understand the following; How does your spark app relates to multi-tenancy? Spark teams can not be used as tenants, am i right?

Thanks in advance!

tomschlick's avatar

The spark app doesn't relate directly to multi-tenancy, but it spark it self uses the single database approach because it wants to show you data from each of your teams.

t0ne's avatar

Thanks your reply, so spark is sufficient for this type of app? Or did you add multi-tenancy?

jjudge's avatar

Looks great. However, what do teams represent here? If I'm coming to your service from fresh, and am asked to create a team as the first step, I'd be pretty stumped as to what they mean, what they are, and what I would do with one.

Please or to participate in this conversation.