Isang digital na palengke para sa mga magsasaka ng Pilipinas. A digital farm-to-market platform connecting Filipino farmers directly to consumers β no middlemen, just fresh and fair.
Ani-Hub is a solo portfolio project β a full-stack digital farm-to-market platform inspired by the real agricultural supply chain challenges faced by Filipino farmers in Cebu, Philippines.
The platform eliminates intermediaries by giving farmers a digital space to list their produce, and consumers an easy way to browse and order fresh vegetables directly from the source. Inspired by the research-backed problem space of platforms like Tabo-Ani, ani-hub is built independently as a demonstration of full-stack web development skills.
The name Ani (meaning harvest in Filipino) reflects the core mission: to bring the fruits of farmers' labor directly to the hands of the people.
| Layer | Technology |
|---|---|
| Web Frontend | Next.js 14, Tailwind CSS, shadcn/ui |
| Backend | Node.js, Express |
| ORM | Prisma |
| Database | PostgreSQL |
| Hosting & Storage | Supabase |
| Auth | JWT |
| Maps | Google Maps API |
| Payments | GCash / Bank Transfer (planned) |
| Role | Description |
|---|---|
| Farmer | Lists produce, manages inventory, receives and confirms orders |
| Consumer | Browses listings, places orders, leaves reviews |
- User registration and authentication (Farmer / Consumer)
- Product listings with photo upload and stock management
- Order placement and status tracking
- Reviews and ratings system
- Farm location via Google Maps embed
- Real-time notifications (planned)
- Secure payment options via GCash (planned)
ani-hub/
βββ client/ # Next.js web frontend
βββ server/ # Node.js + Express REST API
βββ docs/ # Project documentation and case study
βββ README.md
Prerequisites: Node.js v18+, npm or yarn, PostgreSQL
git clone https://github.com/<your-username>/ani-hub.git
cd ani-hubcd server
npm install
cp .env.example .env
# Fill in your environment variables in .envcd ../client
npm install
cp .env.example .env.local
# Fill in your environment variables in .env.localcd ../server
npx prisma migrate dev# In /server
npm run dev
# In /client (separate terminal)
npm run devThe web app will be available at http://localhost:3000 and the API at http://localhost:5000.
Create a .env file in /server with the following:
DATABASE_URL=postgresql://user:password@localhost:5432/anihub
JWT_SECRET=your_jwt_secret
PORT=5000
GOOGLE_MAPS_API_KEY=your_google_maps_keyCreate a .env.local file in /client with:
NEXT_PUBLIC_API_URL=http://localhost:5000
NEXT_PUBLIC_GOOGLE_MAPS_API_KEY=your_google_maps_keyCore tables: USERS, PRODUCTS, ORDERS, ORDER_ITEMS, REVIEWS
See /docs/schema.md for the full ERD and field definitions.
This project follows a short-prefix commit convention:
| Prefix | Purpose |
|---|---|
f: |
New feature |
fix: |
Bug fix |
ui: |
UI / styling changes |
api: |
API / backend changes |
db: |
Database / migrations |
auth: |
Authentication |
docs: |
Documentation |
refactor: |
Code cleanup |
chore: |
Maintenance / dependencies |
web: |
Web-specific changes |
Format: <prefix> <short description in lowercase, present tense>
Example: f: add farmer product listing page
- Project planning and ERD design
- Wireframes (farmer-side)
- Prisma schema setup
- Auth β register and login
- Product CRUD API
- Farmer dashboard
- Consumer marketplace
- Order management
- Reviews and ratings
- Google Maps integration
- Deployment (Vercel + Railway)
This project is licensed under the Ani-Hub Custom Academic & Non-Commercial License v1.0. See LICENSE for full details.
This software is developed for portfolio purposes. Commercial use is strictly prohibited without written consent.
πΎ Para sa mga magsasaka ng Pilipinas. β For the farmers of the Philippines. πΎ