Inspiration💡
Latin America is one of the regions most plagued by corruption, where crime is the bread and butter and the police can't cope with it all. Communities don't feel safe because they don't have the tools to be safe, but in the end we can solve this problem with software.
That's why we created SecureApp, a suite of tools for communities where people can report, publish and monitor security related activities.
What it does❓
Our app is based on 3 main sections: the incident map, the people directory and real-time camera monitoring.
In the incident map you can publish problems, situations, etc. that affect your community, from theft to crowdfunding to solve an infrastructure problem.
People are the most important part of the community, every day you see dozens, maybe hundreds of them, and probably many of them are being sought. That's why we created the people directory, a site where with a photo and a description you can publish someone's profile in order to find them.
Security cameras are an incredible tool for monitoring areas, but they are not smart, so they need to be constantly checked. That's why we created a model based on yolov3 to find objects in security camera videos such as weapons, danger factors, etc.
How we built it🏗️
Our app is built in Next.js and Prisma, using NextUI for styling and Google Cloud Platform as cloud provider.
Our API is based on Next.js serverless functions, our map component is based on Google Maps Platform and the payment system is based on PayPal Sandbox.
We use several rendering strategies to obtain the best possible performance in our app, we use Server Side Rendering, Static Site Generation, using prisma as ORM with a postgresql database hosted in GCP SQL.
How we use Google Cloud Platform☁️
We used all the services we needed from google to make our app, it was an amazing experience, the documentation made the whole process super simple and we were really happy with GCP, the GCP CLI is awesome and we will use it again in our next projects :)
- GCP auth: We use google authentication to save us all the hassle of managing profiles, names, user images, etc.
- GCP SQL: We use google managed database service to provision an instance of postgresql for use in our application using prisma as ORM.
- Google Maps Platform: We use the Google Maps API Javascript SDK to be able to add the incident map functionality to our site, with cool features like clicking on the map to add markers, custom markers, etc.
- GCP App Engine: We used App Engine to deploy our application, we were impressed by its simplicity, we only had to configure a small file and run a command in the CLI.
- GCP Compute Engine: We use compute engine to make custom virtual machines to deploy the different services of our app using Nginx.
- GCP Vortex AI: We used Vortex AI to train our model with YoloV3 easily in the cloud which allowed us to develop our model in record time.
Challenges we ran into🚧
Our biggest challenge was learning to use Google Cloud Platform, we had little experience but thanks to its ease of use in a few moments we were able to do things that would take us much longer in another cloud provider.
Accomplishments that we're proud of✅
We are happy to be able to finish our project without hardcoding anything, to use GCP for most of our project and to be able to collaborate in a team of 3.
What we learned🙋♂️
We learned a lot of things, among them:
- We learn about postgresql in JavaScript
- We learn a lot about Google-based authentication
- We learn about Google Maps Platform Javascript SDK
- We learn about managed SQL in GCP
- We learn how to deploy applications using GCP Compute Engine
What's next for SecureApp💭
We want this app to be used in real environments so that they can improve the safety of communities and make a big impact.
Built With
- gcp
- google-cloud
- next
- postgresql
- prisma
- react
- sql
- vortex
Log in or sign up for Devpost to join the conversation.