FirmaTech Admin Dashboard is a web-based control panel designed to help aquaculture managers:
- 📊 Monitor ponds in real-time
- 🐟 Oversee AI-powered fish health analytics
- 🍽️ Manage feeding operations remotely
- 🔒 Control access with multi-role authentication
This project was built in just 3 days during the Junction Hackathon, organized by Club CELEC, with a mission to digitize and streamline aquaculture operations for administrators.
✅ Real-Time Pond Monitoring — Track temperature, oxygen, pH, fish count, and other live metrics across ponds.
✅ AI Health Insights — Detect unusual fish behaviors and growth trends using integrated AI modules.
✅ Feeding Control & Scheduling — Start/stop feeding remotely, adjust schedules, and view feeding history.
✅ Alerts & Notifications — Instant alerts on critical events like oxygen drops or abnormal temperatures.
✅ Multi-Pond Management — Monitor and manage multiple ponds with individual detailed dashboards.
✅ User Role Management — Admins can manage farmers and access permissions.
✅ Secure Authentication — Login system using NextAuth (credentials, Google OAuth), with MongoDB as the main database.
- Next.js (React Framework)
- TailwindCSS (UI Styling)
- Chart.js (Data Visualization)
- NextAuth (Authentication)
- MongoDB + Mongoose (Database)
- REST API (Next.js Route Handlers)
.
├── app/ # Next.js App Router (pages, dashboards)
├── components/ # Reusable UI components
├── lib/ # Mongoose database connection, helpers
├── models/ # MongoDB Models (Ponds, Users, Feeds, Alerts)
├── public/ # Static assets (images, icons)
├── styles/ # Tailwind configuration
├── .env.local # Environment variables (MongoDB URI, NextAuth secrets)
└── package.json # Project metadata and scripts
Name | Role |
---|---|
Benabdallah Souhaib | Admin Dashboard UI/UX + Frontend |
Marya | UI/UX Design |
Younes | Backend API Development |
Riyad Allali | Database & API Integration |
Ounis Samir Akram | AI Module & Data Analytics |
git clone https://github.com/smart-fish-ponds-algeria/firmatech-Dashboard.git
cd FirmaTech-Admin-Dashboard
npm install
Create a .env.local
file:
MONGODB_URI=your_mongodb_connection_string
NEXTAUTH_SECRET=your_nextauth_secret
NEXTAUTH_URL=http://localhost:3000
npm run dev
Access on http://localhost:3000
- NextAuth handles login via credentials & Google OAuth.
- Role-based access control (Admin, Supervisor, Farmer) via MongoDB user roles.
- Fully customizable roles in
models/User.js
.
- Real-time alert system via custom API notifications (email or dashboard alerts).
- Alerts on low oxygen, high temperature, feeding issues, etc.
MIT © 2025 FirmaTech Admin Team