Guard Dog AI
Github: https://github.com/hamdaankhalid/guard-dog
The source code is as usual available ;)
I spent the last few months working on a "hacky" implementation of Raft, and then writing a distributed hash-map with partitioning across nodes and rebalancing. Having completed those projects I ran into an "engineers-block", I didn't know what to build. That was until I had my lates product idea come to mind.
Every now and then I think about how cool it would be to have one of those smart security cameras for my house, something clicked and I realized that I already have devices lying around... why not write software that let's you turn any camera connected to the internet into a smart security camera, on-top of that let users run their own models on it for things like motion detection and object detection. All videos can be viewed later as well as viewed in real time too!
I listed the following requirements for my MVP and I began working on them:
I decided the nature of the problem justified the use of Microservices! The design decision came from the following reasons:
Independent scalability and flexibility of choosing the best tool for the job made this the right choice for me.
Tech Stack:
I already built out a good amount of the frontend, the authentication system, and just as of today (August 3rd) figured out how I can send streams in a batch for processing and storing on the cloud! I will be documenting the rest of the application as I build it out. My next update will be for finishing the Client -> Cloud video storage and processing.
This looks super cool!!