FlowTrace, organizasyonların envanterlerini QR kod etiketleriyle takip etmesini sağlayan modern bir web tabanlı uygulamadır.
- Yeni depo oluşturma (ad, konum, kapasite)
- Her depo için benzersiz QR kod üretimi
- PDF olarak QR kod etiketi indirme
- Depo doluluk oranı takibi
- Eşya kaydı (ad, seri no, kategori, marka, model)
- Otomatik QR kod üretimi
- Durum takibi (stokta, kullanımda, bakımda)
- Değer ve garanti bilgisi yönetimi
- Gelişmiş arama (eşya adı, seri no, kategori)
- Bulanık arama (fuzzy search) desteği
- Kategori ve marka bazlı filtreleme
- Depo konumu ile arama
- Web arayüzünde kamera ile QR tarama
- Mobil uyumlu tarama deneyimi
- Tarama sonrası hızlı işlem seçenekleri
- Eşya çıkış/giriş işlemleri
- Kimin aldığı, nereye gittiği bilgisi
- Dönüş tarihi takibi
- Geciken eşyalar için otomatik uyarı
- Dashboard ile genel görünüm
- Depo doluluk grafikleri
- Eşya hareket geçmişi
- Geciken eşyalar raporu
- PDF/Excel export özelliği
- Rol bazlı yetki sistemi (Admin/Personel)
- Güvenli kimlik doğrulama
- Kullanıcı aktivite takibi
- Ruby on Rails 7.x - Web framework
- PostgreSQL 15 - Veritabanı
- Redis - Cache ve session store
- Sidekiq - Background jobs
- Vue.js 3.x - Modern JavaScript framework
- Vue Router - SPA routing
- Pinia - State management
- Chart.js - Veri görselleştirme
- html5-qrcode - QR kod tarama
- Tailwind CSS - Utility-first CSS
- Docker & Docker Compose - Containerization
- Nginx - Reverse proxy
- SSL/TLS - Güvenli bağlantı
- Docker ve Docker Compose
- Git
- Projeyi klonlayın:
git clone <repository-url>
cd flowtrace- Environment dosyasını oluşturun:
cp .env.sample .env
# .env dosyasını ihtiyaçlarınıza göre düzenleyin- Docker ile çalıştırın:
docker-compose up --build- Veritabanını hazırlayın:
docker-compose exec web rails db:create
docker-compose exec web rails db:migrate
docker-compose exec web rails db:seed- Uygulamaya erişin:
- Web: https://localhost (SSL ile)
- HTTP: http://localhost:3000
- API: http://localhost:3000/api/v1
-
Ruby, Node.js ve PostgreSQL yükleyin
-
Bağımlılıkları yükleyin:
bundle install
npm install- Veritabanını kurun:
rails db:create db:migrate db:seed- Assets'leri derleyin:
npm run build- Sunucuyu başlatın:
rails serverSeed data ile birlikte aşağıdaki kullanıcılar oluşturulur:
| Şifre | Rol | |
|---|---|---|
| [email protected] | password123 | Admin |
| [email protected] | password123 | Personel |
| [email protected] | password123 | Personel |
POST /api/v1/auth/login
POST /api/v1/auth/logout
GET /api/v1/auth/meGET /api/v1/warehouses
POST /api/v1/warehouses
GET /api/v1/warehouses/:id
PUT /api/v1/warehouses/:id
DELETE /api/v1/warehouses/:id
GET /api/v1/warehouses/:id/qr_code_pdfGET /api/v1/items
POST /api/v1/items
GET /api/v1/items/:id
PUT /api/v1/items/:id
DELETE /api/v1/items/:id
PATCH /api/v1/items/:id/check_out
PATCH /api/v1/items/:id/check_in
GET /api/v1/items/:id/qr_code_pdfGET /api/v1/search?q=query
POST /api/v1/scan
GET /api/v1/scan/:qr_codeGET /api/v1/reports/dashboard
GET /api/v1/reports/warehouse_occupancy
GET /api/v1/reports/overdue_items# Ruby linting
bundle exec rubocop
# JavaScript linting
npm run lint
# Tests
bundle exec rspec # Backend tests
npm test # Frontend tests# Yeni migration oluştur
rails generate migration CreateNewTable
# Migration çalıştır
rails db:migrate
# Rollback
rails db:rollback
# Seed data
rails db:seedQR kodlar otomatik olarak oluşturulur:
- Depolar:
WH-XXXXXXXXformatında - Eşyalar:
IT-XXXXXXXXformatında - PNG ve PDF formatında export
- 300x300 piksel, 1 modül border
# Database
DATABASE_HOST=localhost
DATABASE_USERNAME=postgres
DATABASE_PASSWORD=password
DATABASE_PORT=5432
# Redis
REDIS_URL=redis://localhost:6379/0
# Application
APP_HOST=localhost:3000
APP_URL=http://localhost:3000
RAILS_ENV=development
# Security
SECRET_KEY_BASE=your_secret_key
FORCE_SSL=false
# Features
ENABLE_QR_SCANNING=true
ENABLE_REPORTS=true- Redis cache store
- Fragment caching for reports
- Static asset caching via Nginx
- Proper indexing on search fields
- Connection pooling
- Query optimization with includes
- Code splitting with dynamic imports
- Asset compression
- Progressive Web App (PWA) ready
- Devise for authentication
- Pundit for authorization
- Role-based access control
- Session management
- SQL injection protection
- XSS prevention
- CSRF protection
- Encrypted sensitive data
- Force SSL in production
- Strong cipher suites
- HSTS headers
- Environment variables configured
- SSL certificates installed
- Database backed up
- Assets precompiled
- Background workers running
- Monitoring configured
docker-compose -f docker-compose.prod.yml up -dQR kodlar görünmüyor:
public/qr_codesdizini yazılabilir mi kontrol edin- ImageMagick yüklü mü kontrol edin
Database bağlantı hatası:
- PostgreSQL servisinin çalıştığını kontrol edin
- Database credentials'ları doğrulayın
Assets yüklenmiyor:
npm run buildkomutunu çalıştırın- Nginx konfigürasyonunu kontrol edin
Herhangi bir sorun yaşarsanız:
- Bu README'yi kontrol edin
- Log dosyalarına bakın (
rails logs) - GitHub Issues bölümünden issue açın
Bu proje MIT lisansı altında lisanslanmıştır.
- Fork yapın
- Feature branch oluşturun (
git checkout -b feature/amazing-feature) - Commit yapın (
git commit -m 'Add amazing feature') - Push yapın (
git push origin feature/amazing-feature) - Pull Request açın
FlowTrace - Modern envanter yönetimi artık parmaklarınızın ucunda! 🚀