Lumen is a modern, mobile-friendly web front-end for businesses running LOGO Tiger ERP. It runs on top of your existing LOGO SQL Server database and provides a fast sales-terminal experience — order entry, customer/stock lookup, balances, cheques, multi-currency and reporting — in Turkish, on any device.
Lumen does not replace LOGO Tiger; it is a companion interface. Open source under the MIT license. First-time setup is a browser wizard (/kurulum.php), which also creates the tables Lumen needs from the scripts in sql/. You can build a synthetic demo database from those same scripts to try it without touching production data.
Used in production at AKEL Melamin — a Turkish melamine tableware manufacturer — for daily order entry, stock lookup and collections on a live LOGO Tiger installation. This repository is the de-branded, configurable open-source edition of that same codebase.
⚠️ Requires an existing LOGO Tiger installation on Microsoft SQL Server (with thepdo_sqlsrvPHP driver).
- Lumen Nedir?
- Üretimde Kullanılıyor
- Özellikler
- Gereksinimler
- Kurulum
- Demo Veritabanı
- Yapılandırma
- Kendi Markanız
- Güvenlik
- Katkıda Bulunma
- Lisans
Lumen, LOGO Tiger ERP kullanan firmalar için tasarlanmış, web tabanlı bir sipariş ve stok yönetim ön yüzüdür. Verinin kaynağı LOGO'nun kendi SQL Server veritabanıdır; Lumen bu veritabanı üzerine hızlı, sade ve mobil uyumlu bir satış terminali arayüzü koyar.
Amaç: satış temsilcilerinin ve mağaza personelinin sipariş girişi, cari/stok sorgulama ve tahsilat gibi günlük işlemleri telefondan veya tabletten, LOGO'nun masaüstü istemcisine ihtiyaç duymadan yapabilmesi. LOGO bağımlılığı kalıcıdır — Lumen LOGO'nun yerini almaz, onu tamamlar.
Lumen bir demo ya da kavram kanıtı değil: temelini oluşturan sistem AKEL Melamin bünyesinde, LOGO Tiger üzerinde canlı bir kurulumda her gün gerçek sipariş, stok ve tahsilat işlemleri için kullanılıyor.
Bu depo, aynı kod tabanının markasızlaştırılmış ve yapılandırılabilir açık kaynak sürümüdür — firmaya özel değerler (ürün kodu ön eki, mağaza carisi, marka, yetkiler) koddan çıkarılıp ayar dosyalarına taşınmıştır. Yani üretimde denenmiş akışları, kendi LOGO veritabanınıza kurup kullanabilirsiniz.
- 🧾 Sipariş girişi — hızlı çoklu satır, kademeli iskonto, KDV, döviz, koli/adet
- 👥 Cari yönetimi — bakiye, ekstre, Türkçe-duyarlı arama, cari işlemleri merkezi
- 📦 Stok — anlık miktar (LOGO view'larından), fiyat, birim/koli, barkod
- 💳 Çek yönetimi — giriş/çıkış/ciro, portföy takibi, çeke görsel ek
- 💱 Döviz işlemleri — çoklu kur, dövizli sipariş
- 💰 Kasa & tahsilat, fatura akışları
- 📊 Raporlar — satış, cari yaşlandırma, kâr-zarar, çek, KDV, pazarlamacı performansı
- 🏷️ Barkod / etiket üretimi
- ✅ Görev takibi
- 📱 Mobil uyumlu + PWA — telefona kısayol olarak eklenebilir
- 🎨 Kişiselleştirme — kullanıcı bazlı vurgu rengi, yazı boyutu, "müşteri yanında" gizli mod
- 🔐 Rol bazlı yetki — yönetici / personel / müşteri; kod bazlı ekran izinleri
- 🧙 Kurulum sihirbazı — tarayıcıdan DB bağlantısı + ilk yönetici
- 🖼️ Kendi logonuz — ayarlardan yükleyin
- LOGO Tiger kurulu bir Microsoft SQL Server veritabanı
- PHP 8.2+ ve
pdo_sqlsrvsürücüsü (Microsoft Drivers for PHP for SQL Server) - Web sunucusu: IIS (FastCGI) veya Apache/nginx
- Composer (bağımlılıklar için)
PHP 8.2 tabanı neden sabit:
composer.jsondakimaennchen/zipstream-php: ~3.1.2kısıtı kasıtlıdır. PhpSpreadsheet’in dolaylı bağımlılığı olan bu paket 3.2’den itibarenphp-64bit ^8.3istiyor; sabitleme kaldırılırsa kilit dosyası PHP 8.3’e bağlanır ve 8.2 kurulumlarındacomposer installreddeder. Taban 8.3’e çıkarılırsa bu satır da kaldırılmalı.
# 1) Depoyu alın
git clone https://github.com/husodrn46/Lumen.git
cd Lumen
# 2) Bağımlılıkları kurun
composer install
# 3) Web sunucunuzu bu klasöre yönlendirin (veya hızlı deneme):
php -S localhost:8000Ardından tarayıcıdan http://localhost:8000/kurulum.php adresini açın ve sihirbazı izleyin:
- Veritabanı — SQL Server adresi, veritabanı adı, kullanıcı/parola + firma/dönem numarası. Lumen bağlantıyı test edip
.envve_baglanti_.incdosyalarını oluşturur. - Yönetici — LOGO'daki mevcut bir satış temsilcisi kodunu seçip parola belirleyin.
Kurulum bitince sihirbaz kilitlenir (.installed). Artık giris.php üzerinden giriş yapabilirsiniz.
Elle kurulum:
.env.example→.envve_baglanti_.inc.example→_baglanti_.inckopyalayıp değerleri doldurun.
LOGO lisansınız olmadan denemek ister misiniz? sql/ altındaki şema betiklerinden yola çıkarak sentetik bir demo veritabanı oluşturabilir; Lumen'in tüm çekirdek ekranlarını gerçek veriye dokunmadan görebilirsiniz. (Demo verisi tamamen uydurmadır; gerçek müşteri/ürün bilgisi içermez.)
| Dosya | Amaç |
|---|---|
.env |
DB bağlantısı, firma/dönem önekleri, mağaza carisi, log kökü (gizli — git'e girmez) |
_baglanti_.inc |
.env'i okuyan bağlantı katmanı |
_bilgi_.inc |
Özellik bayrakları ve varsayılanlar (döviz, çoklu depo, çek, mağaza satışı…) |
Öne çıkan ayarlar: MAGAZA_CARI (mağaza hızlı satış carisi, 0 = kapalı), $dovizlicalis, $cokludepo, $urun_kodu_oneki (raporları belirli bir ürün kodu ön ekiyle sınırlar; boş = tüm ürünler). Loglar .env LOG_ROOT verilmezse logs/ klasörüne yazılır.
Ayarlar → Marka / Logo ekranından kendi yatay logonuzu ve uygulama ikonunuzu yükleyebilirsiniz (PNG/JPG/WEBP; sunucuda güvenli şekilde yeniden kodlanır). Vurgu rengi --red CSS değişkeniyle yönetilir.
- Tüm korumalı sayfalarda oturum + yetki denetimi (
kontrol.php) - Durum değiştiren isteklerde CSRF token
- Parolalar
password_hash(bcrypt) ile saklanır - Tüm sorgular PDO prepared statement; çıktıda
htmlspecialchars - Oturum sabitleme koruması, HttpOnly + SameSite=Strict çerezler
- Gizli bilgiler
.env/_baglanti_.inciçinde tutulur ve.gitignoreile korunur
.env ve _baglanti_.inc veritabanı parolanızı içerir; web sunucusunun bu
dosyaları servis etmemesi gerekir. Depodaki hazır yapılandırmalar:
| Sunucu | Dosya | Durum |
|---|---|---|
| Apache | .htaccess |
Depoda hazır gelir |
| IIS | web.config |
Depoda hazır gelir |
| nginx | — | Kendiniz eklemelisiniz (nginx .htaccess okumaz) |
nginx kullanıyorsanız server { … } bloğunuza şunu ekleyin:
location ~ /\. { deny all; } # .env, .git, .user.ini …
location ~* \.(inc|ini|sql|log|bak|example)$ { deny all; }
location ~ ^/(logs|tmp|sql|vendor|scripts)/ { deny all; }Kurulumdan sonra https://siteniz/.env adresini tarayıcıda deneyin —
403/404 dönmeli, dosya içeriği görünmemelidir.
Güvenlik açığı bildirmek için lütfen bir issue açın (hassas konularda ayrıntıyı özel paylaşın).
Katkılar memnuniyetle karşılanır. Değişiklikten önce:
bash scripts/validate.sh # sözdizim denetimi + sağlık taraması
php -l path/to/file.php # tek dosyaYeni PHP dosyalarında declare(strict_types=1); kullanın, mevcut kod stiline uyun, sorgularda daima prepared statement tercih edin.
MIT © husodrn46
"LOGO" ve "Tiger", LOGO Yazılım'ın tescilli markalarıdır. Lumen bağımsız, üçüncü taraf bir açık kaynak projesidir ve LOGO Yazılım ile herhangi bir bağı yoktur.
