DroneDT
๐ณ A high-performance MERN stack e-commerce platform built for industrial drone manufacturing in Colombia, featuring a Tesla-inspired UI, secure multi-panel architecture (Client/Admin), and hybrid database scaling โ fully containerized with Docker and ready for AWS cloud deployment.
Install / Use
/learn @NietoDeveloper/DroneDTREADME
<br/> <!-- QUICK NAVIGATION -->A high-performance MERN stack e-commerce platform for industrial drone manufacturing in Colombia. Tesla-inspired UI ยท Secure multi-panel architecture ยท Fully containerized ยท AWS-ready.
๐ Quick Start ยท ๐๏ธ Architecture ยท ๐ฆ Modules ยท ๐ ๏ธ Tech Stack ยท ๐ณ Docker ยท โ๏ธ Deploy ยท ๐ค Contributing
</div><!-- ANIMATED DEMO GIF PLACEHOLDER --> <div align="center"> <img src="https://readme-typing-svg.demolab.com?font=Fira+Code&size=22&duration=3000&pause=800&color=2196F3¢er=true&vCenter=true&multiline=true&width=700&height=80&lines=MERN+Stack+%7C+Next.js+15+%7C+TypeScript;Tesla-Inspired+UI+%7C+Docker+%7C+AWS-Ready;Industrial+Drones+%7C+Colombia+%F0%9F%87%A8%F0%9F%87%B4" alt="Typing SVG"/> </div>
๐ Table of Contents
- Overview
- Key Features
- Architecture
- Modules
- Tech Stack
- Quick Start
- Docker Setup
- Environment Variables
- Project Structure
- API Reference
- Deployment
- Roadmap
- Contributing
- License
๐ Overview
DroneDT is a full-stack monorepo e-commerce platform purpose-built for the industrial drone manufacturing market in Colombia. Inspired by Tesla's website design philosophy โ immersive visuals, product configurators, and zero-friction UX โ it combines a public storefront, a customer dashboard, and an employee admin panel into one cohesive system.
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ DroneDT โ
โ โ
โ ๐ Public Shop ๐ค Client Panel ๐ ๏ธ Employee Panel โ
โ โ โ โ โ
โ โก Express REST API (back/) โ
โ โ โ
โ ๐ MongoDB Atlas + ๐๏ธ PostgreSQL (SQL) โ
โ โ โ
โ โ๏ธ AWS S3 ยท EC2 ยท CloudFront โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โจ Key Features
<table> <tr> <td width="50%">๐ E-Commerce Shop
- Product configurator (drone specs, add-ons)
- Cart management & checkout flow
- Appointment & service scheduling
- 4K video hero sections
- SEO-optimized with Next.js 15 App Router
๐ ๏ธ Admin / Employee Panel
- Real-time inventory management (CRUD)
- Sales analytics with charts
- User & role management
- Appointment tracking
- AI bot integration (planned)
๐ค Client Dashboard
- Order tracking & history
- Profile management
- Support chat / FAQ
- Personalized recommendations
๐ Security & Scalability
- JWT authentication with refresh tokens
- Input validation via Zod
- Hybrid DB: MongoDB Atlas + PostgreSQL
- Role-based access control (RBAC)
- Docker-first local development
๐๏ธ Architecture
drone-dt/ โ Monorepo root
โโโ front/ โ Public Shop (Next.js 15 + Tailwind)
โโโ back/ โ REST API (Express + TypeScript)
โโโ panel-cliente/ โ Client Panel (Next.js + Auth)
โโโ panel-empleados/ โ Admin Panel (Next.js + RBAC)
โโโ shared/ โ Shared types & utils (TypeScript)
โโโ docker-compose.yml โ Full local orchestration
โโโ package.json โ Workspace config
Data Flow
Browser โ Next.js (SSR/SSG) โ Express API โ MongoDB Atlas / PostgreSQL
โ AWS S3 (media storage)
โ AI Bot API (planned)
๐ฆ Modules
1. front/ โ Public E-Commerce Shop
Tesla-inspired storefront โ minimalist, fast, immersive.
| Route | Description |
|---|---|
| / | Home: hero, drone models, CTAs |
| /shop/drones | Interactive drone catalog |
| /shop/accesorios | Accessories listing |
| /shop/servicios | Service packages |
| /about | Brand story |
| /contact | Contact form |
| /legal/privacidad | Privacy policy |
| /legal/terminos | Terms of service |
Key components:
Header.tsxโ Fixed navbar, responsive hamburger menuFooter.tsxโ Links to shop, support, legalsections/Hero.tsxโ Full-screen 4K drone videosections/FeaturesDrones.tsxโ Animated product cards
2. back/ โ REST API Engine
Scalable Node.js + Express API with dual-database architecture.
| Method | Endpoint | Description | Auth |
|---|---|---|---|
| POST | /api/users/register | Register new user | โ |
| POST | /api/users/login | Login, returns JWT | โ |
| GET | /api/drones | List all drones | โ |
| GET | /api/drones/:id | Drone detail | โ |
| POST | /api/drones | Create drone | ๐ Admin |
| PUT | /api/drones/:id | Update drone | ๐ Admin |
| DELETE| /api/drones/:id | Delete drone | ๐ Admin |
| GET | /api/orders | User orders | ๐ User |
| POST | /api/orders | Place order | ๐ User |
| GET | /api/admin/stats | Dashboard metrics | ๐ Admin |
3. panel-cliente/ โ Customer Dashboard
Self-service portal for customers post-purchase.
| Route | Description |
|---|---|
| / | Summary: recent orders, quick actions |
| /ordenes | Full order history with filters |
| /perfil | Edit profile, preferences |
| /soporte | Support chat & FAQ |
4. panel-empleados/ โ Employee Admin Panel
Internal tool for operations, inventory, and analytics.
| Route | Description |
|---|---|
| / | KPI Dashboard: daily sales, low stock alerts |
| /inventario | Drone & accessory CRUD forms |
| /ventas | Sales reports, Chart.js graphs |
| /usuarios | Manage customers & employees |
| /configuracion | App settings, integrations |
5. shared/ โ Shared Packages
// shared/types/index.ts
export interface IDrone {
_id: string;
name: string;
price: number;
specs: DroneSpecs;
stock: number;
imageUrl: string;
}
export interface IUser {
_id: string;
email: string;
role: 'client' | 'employee' | 'admin';
createdAt: Date;
}
export interface IOrder {
_id: string;
userId: string;
items: OrderItem[];
total: number;
status: 'pending' | 'confirmed' | 'shipped' | 'delivered';
}
๐ ๏ธ Tech Stack
<div align="center">| Layer | Technology | Version | |---|---|---| | Frontend | Next.js + React | 15 / 19 | | Styling | Tailwind CSS | 4.x | | State | Zustand / Redux Toolkit | latest | | Backend | Node.js + Express | 20 / 5 | | Language | TypeScript | 5.x | | NoSQL DB | MongoDB Atlas + Mongoose | 8.x | | SQL DB | PostgreSQL | 16 | | Auth | JWT + bcrypt | โ | | Validation | Zod | 3.x | | Media | AWS S3 | โ | | Containerization | Docker + Docker Compose | latest | | Deploy (API) | Railway | โ | | Deploy (Front) | Vercel | โ |
</div>๐ Quick Start
Prerequisites
Make sure you have the following installed:
