Inspiration
Growers today juggle a scattered mix of tools: a Facebook group for community, a spreadsheet for inventory, a separate app for farm sensors, and yet another tool for taking payments. We wanted to bring all of that together into one connected home for growers.
What it does
GreenWave (Gwave) is an all-in-one social super-app for growers. It combines a Facebook-style social feed, groups, and messenger (with calls and stories) with a strain and mineral knowledge base, paid memberships, grower calculators, a point-of-sale system for in-person sales, and an IoT dashboard for real-time smart-farm monitoring. Everything lives in a single account and a single codebase.
How we built it
The app is a single Next.js 14 (App Router) project written in TypeScript, styled with Tailwind CSS and shadcn/ui, with Zustand for client state. The backend runs entirely on AWS: Postgres on RDS with row-level security, exposed through a self-hosted PostgREST + Realtime data API, S3/CloudFront for media storage, and Cognito for authentication. Payments run through Stripe and PromptPay, and the smart-farm dashboard talks to devices over MQTT via EMQX and a small bridge service. The whole stack is containerized with Docker and deployed via Coolify on AWS EC2.
Challenges we ran into
Combining so many different domains (social, commerce, IoT, and payments) into one coherent product meant carefully designing data access rules so that every table respects row-level security, and making sure realtime features (chat, notifications, live sensor data) stayed fast and reliable under load.
Accomplishments that we're proud of
Getting social, commerce, and IoT features all working together smoothly in a single, coherent app with a consistent design system.
What we learned
We learned a lot about designing secure, realtime data access patterns on Postgres, and about coordinating many product surfaces within one codebase.
What's next for Gwave
Polishing the mobile experience, expanding the knowledge base content, and gathering feedback from real growers to prioritize the next set of features.
Built With
- amazon-web-services
- css
- docker
- next.js
- postgresql
- stripe
- tailwind
- typescript
Log in or sign up for Devpost to join the conversation.