Bu proje generic bir template'tir. Kendi ihtiyaçlarınıza göre özelleştirebilirsiniz.
Dosya: config/config.yaml
system:
name: "Kendi Sistem Adınız" # Değiştirin
version: "2.0.0"
description: "Açıklamanız"
vendor: "Şirket Adınız" # DeğiştirinDosya: config/ui_layout.yaml
branding:
app_name: "Uygulama Adınız" # Değiştirin
app_subtitle: "Alt başlık"
logo: "/assets/logo.png" # Kendi logonuzu ekleyin
favicon: "/assets/favicon.ico"
theme_color: "#f59e0b" # Kendi renginizi seçinDosya: docker-compose.yml
services:
backend:
container_name: sizin-backend # Değiştirin
frontend:
container_name: sizin-frontend # Değiştirin
networks:
sizin-network: # Değiştirin
driver: bridgeTüm dokümantasyon dosyalarında "Camera Control System" yerine kendi isminizi kullanın:
README.mddocs/ARCHITECTURE.mddocs/USAGE_EXAMPLES.mddocs/CHANGELOG.md
Toplu değiştirme:
# Linux/Mac
find . -type f -name "*.md" -exec sed -i 's/Camera Control System/Sizin Sistem Adınız/g' {} +
# Veya manuel olarak her dosyayı düzenleyinDosya: config/ui_layout.yaml
theme:
mode: "dark" # dark, light, auto
primary_color: "amber" # Değiştirin: blue, green, red, purple, etc.
accent_color: "orange" # Değiştirin
colors:
background: "#0f172a" # Ana arkaplan
surface: "#1e293b" # Kart/panel arkaplanı
border: "#334155" # Kenarlık rengi
text_primary: "#f1f5f9" # Ana metin
text_secondary: "#94a3b8" # İkincil metin- Logonuzu
frontend/public/assets/logo.pngolarak kaydedin - Favicon'unuzu
frontend/public/assets/favicon.icoolarak kaydedin config/ui_layout.yaml'da path'leri güncelleyin
Dosya: config/config.yaml
server:
jwt_secret: "BURAYA-GÜÇLÜ-BİR-SECRET-KEY-YAZIN" # Mutlaka değiştirin!Güçlü secret oluşturma:
# Python ile
python3 -c "import secrets; print(secrets.token_urlsafe(32))"
# OpenSSL ile
openssl rand -base64 32Dosya: config/config.yaml
users:
- username: "admin"
password: "GÜÇLÜ-ŞİFRE" # Değiştirin!
role: "admin"Dosya: config/config.yaml
server:
cors_origins:
- "http://localhost:3000" # Development
- "https://sizin-domain.com" # Production - ekleyinDosya: config/cameras.yaml
cameras:
- id: "sizin-kamera-id" # Benzersiz ID
name: "Kamera İsmi"
type: "daylight" # daylight, thermal, ptz
enabled: true
stream:
url: "rtsp://KAMERA-IP:554/stream1" # Kendi RTSP URL'iniz
username: "admin"
password: "şifre"
ptz:
protocol: "tcp" # tcp, udp, serial, visca
host: "KAMERA-IP"
port: 4000TCP (Ethernet):
ptz:
protocol: "tcp"
host: "192.168.1.100"
port: 4000UDP (Düşük gecikme):
ptz:
protocol: "udp"
host: "192.168.1.100"
port: 4001Serial (RS-232/RS-485):
ptz:
protocol: "serial"
device: "/dev/ttyUSB0"
baudrate: 9600VISCA (Sony kameralar):
ptz:
protocol: "visca"
device: "/dev/ttyUSB0"
baudrate: 9600
camera_address: 1Dosya: docker-compose.yml
services:
backend:
ports:
- "8000:8000" # Sol taraf: Host port (değiştirin)
frontend:
ports:
- "3000:3000" # Sol taraf: Host port (değiştirin)Dosya: config/config.yaml
server:
host: "0.0.0.0"
port: 8000 # Backend port (değiştirin)backend/app/transport/dizinine yeni dosya ekleyinCameraTransportsınıfından türetinTransportFactory'ye kaydedin
Örnek: backend/app/transport/websocket.py
from .base import NetworkTransport
class WebSocketTransport(NetworkTransport):
async def connect(self):
# WebSocket bağlantı mantığı
passfrontend/src/components/dizinine component ekleyinconfig/ui_layout.yaml'a sayfa tanımı ekleyin
navigation:
- id: "yeni-sayfa"
label: "Yeni Sayfa"
icon: "🆕"
path: "/yeni-sayfa"
permission: "camera:view"Production'da hassas bilgileri environment variable olarak geçin:
# .env dosyası oluşturun (git'e commit etmeyin!)
JWT_SECRET=güçlü-secret-key
DB_PASSWORD=database-şifresi
ADMIN_PASSWORD=admin-şifresidocker-compose.yml'de kullanın:
services:
backend:
environment:
- JWT_SECRET=${JWT_SECRET}
- DB_PASSWORD=${DB_PASSWORD}- SSL sertifikası edinin (Let's Encrypt önerilir)
- Nginx config'e ekleyin
config/config.yaml'da SSL'i aktif edin
security:
ssl:
enabled: true
cert_file: "/certs/cert.pem"
key_file: "/certs/key.pem"-
config/config.yaml- Sistem adı ve vendor -
config/config.yaml- JWT secret değiştir -
config/config.yaml- Tüm şifreleri değiştir -
config/ui_layout.yaml- App name ve branding -
config/cameras.yaml- Kendi kameralarını ekle -
docker-compose.yml- Container isimleri - Logo ve favicon ekle
- CORS origin'leri güncelle
- SSL/HTTPS aktif et
- Environment variables kullan
- Rate limiting aktif et
- Firewall kuralları ayarla
- Backup stratejisi belirle
- Log seviyesini WARNING'e çek
- README.md'yi özelleştir
- Tema renklerini değiştir
- Özel özellikler ekle
- Database değiştir (PostgreSQL)
- Cache ekle (Redis)
Özelleştirme sırasında sorun yaşarsanız:
-
Dokümantasyonu okuyun:
-
Logları kontrol edin:
docker compose logs backend docker compose logs frontend
-
Config'i validate edin:
python3 -c "import yaml; yaml.safe_load(open('config/config.yaml'))"
Başarılar! Kendi özelleştirilmiş kamera kontrol sisteminizi oluşturun! 🚀