Merhaba! Bu proje Kopilot Tech için hazırladığım teknik case çalışması. SkyOps adlı hayali bir drone servis şirketi için filo yönetim ve bakım takip sistemi geliştirdim.
SkyOps'u şöyle hayal edin: rüzgar türbinleri, güneş panelleri ve elektrik hatlarının havadan denetimini yapan bir şirket. Ellerinde 150'den fazla endüstriyel drone var ve bunların bakımını, uçuş saatlerini, görevlerini bir şekilde takip etmeleri gerekiyor.
- Drone envanterini tutuyor — seri numarası, model, durum, toplam uçuş saati gibi bilgiler hep güncel
- Görevleri planlayıp takip edebiliyorsunuz
- Bakım zamanları geldiğinde sistem kendisi hatırlatıyor
- Filonun genel sağlığını tek bir dashboard'dan görebiliyorsunuz
- NestJS (TypeScript) — API tarafı için
- TypeORM — Veritabanı işlemleri
- PostgreSQL — Ana veritabanı
- Redis — Cache ve kuyruk işleri (Şu anda kullanılmıyor)
- Swagger — API dokümantasyonu (http://localhost:3000/docs)
- Vue 3 (TypeScript) — UI framework
- Pinia — State management
- Axios — API haberleşmesi
- Vite — Build tool
- Jest — Backend testleri
- Cypress — E2E testler
- Docker & Docker Compose — Containerization
- Maildev — Email test ortamı
Projeyi ayağa kaldırmak aslında çok kolay. Docker Compose sayesinde tek komutla her şey hazır hale geliyor.
# 1. Repoyu klonla
git clone git@github.com:ufukdev/drone-management.git
cd drone-management
# 2. Environment dosyalarını hazırla
cp backend/env-example-relational backend/.env
cp frontend/.env.example frontend/.env
# 3. Docker ile başlat
docker compose up --buildHepsi bu kadar. Birkaç dakika içinde tüm servisler ayağa kalkacak.
Her şey hazır olduğunda şu adreslerden erişebilirsiniz:
- Uygulama: http://localhost:8000
- API: http://localhost:3000
- API Dokümantasyonu: http://localhost:3000/docs
- Mail Test (Maildev): http://localhost:1080
- Veritabanı Yönetimi (Adminer): http://localhost:8080