
Kurumsal WebWeb sitesi + yönetim paneli
MD Kurumsal
Drone destekli yüksek yapı temizliği veren bir şirketin kurumsal sitesi ve teklif taleplerini uçtan uca yöneten paneli.

Genel bakış
Drone ile dış cephe, cam, güneş paneli, çatı ve endüstriyel yüzey temizliği yapılan bir işte satış tek bir tıklamayla kapanmıyor: önce yapının cephesi, yüksekliği ve erişim koşulu konuşuluyor, sonra keşif planlanıyor, teklif ondan sonra çıkıyor. Sitenin işi bu görüşmeyi başlatmak ve doğru bilgiyle başlatmak.
Bu yüzden site bir broşür değil, bir toplama hunisi olarak kuruldu. Hizmet ve çalışma alanı sayfaları ziyaretçiyi kendi yapı türüne getiriyor, üç adımlı teklif formu keşif için gereken bilgiyi (yüzey, kat, yükseklik, fotoğraf) baştan topluyor, gelen talep panele düşüp durum akışında ilerliyor. İçeriğin tamamı panelden yönetiliyor; şirket yeni hizmet ya da vaka eklemek için bana ihtiyaç duymuyor.
Zorluk
Bu sektörde tanıtım metinleri kolayca abartıya kayıyor: uydurma istatistikler, olmayan müşteri yorumları, doğrulanmamış teknik değerler. Şirketin böyle bir iddiaya ihtiyacı yoktu, ama sitenin bunu yapısal olarak engellemesi gerekiyordu — yoksa ilk içerik girişinde geri gelirdi.
Yaklaşım
Doğrulanmamış veri arayüze hiç çıkamıyor. İstatistik, referans ve yorum bölümleri karşılığı olan kayıt yoksa render edilmiyor, JSON-LD'de puan şeması hiç üretilmiyor, form otomatik fiyat vermiyor. Bir bölümün boş kalması, uydurulmuş olmasına yeğlendi.
- Rol
- Ürünün tamamı — tasarım, site, panel, dağıtım
- Platform
- Web sitesi ve yönetim paneli (tek Next.js uygulaması)
- Kapsam
- 19 sayfa şablonu · 28 panel ekranı · 22 veri modeli
- Durum
- Teslim edildi, bakım ve içerik desteği sürüyor
Benim rolüm
Ürünün tamamı: bilgi mimarisi ve tasarım sistemi, public sitenin tüm sayfa şablonları, teklif akışı, yönetim paneli, veri modeli ve dağıtım yapılandırması. Şirketin elindeki katalog ve tanıtım dokümanlarından içerik iskeleti çıkarıldı; kod tarafında hiçbir şirket bilgisi gömülü değil, hepsi tek bir yapılandırma dosyasından ya da veritabanından okunuyor.
Öne çıkanlar
- Teklif akışı — üç adımlı form, fotoğraf eki ve panelde yeni → görüşüldü → keşif → teklif → sonuç durum akışı
- İçerik yönetimi — hizmet, çalışma alanı, vaka çalışması, blog ve SSS kayıtları zengin metin editörüyle
- Rol bazlı panel — yönetici tam yetkili, editör yalnızca içerik, satış yalnızca talepler
- SEO altyapısı — tek kanonik host, otomatik sitemap, JSON-LD şemaları ve panelden yönetilen 301 yönlendirmeler
Sitenin içinde ne var
Aşağıdaki görseller sitenin kendisinden alındı — temsilî tasarım değil.

01 · Ana sayfa
Tek cümlelik vaat, tek birincil eylem. Hemen altındaki dört maddelik şerit, ziyaretçinin “bu iş bana uygun mu” sorusunu kaydırmadan yanıtlıyor.

02 · Hizmet ızgarası
Altı hizmet eşit kutulara dizilmedi; en çok talep gelen hizmet büyük kareyi alıyor. Her kartın görseli o hizmetin kendi uygulamasından.

03 · Hizmetler
Ziyaretçi yüzeyini biliyor, yöntemini bilmiyor. Liste bu yüzden yönteme göre değil yüzeye göre kurgulandı: cam, panel, çatı, kompozit.

04 · Hizmet detayı
Başlıkta uygun yüzey, adım sayısı ve çalışma alanı künyesi. Altında “hangi sorunları çözer” bloğu — hizmeti tarif etmek yerine ihtiyacı eşleştiriyor.

05 · Vaka çalışması
Müşteri, lokasyon, yüzey alanı, yükseklik ve süre tek şeritte. Vaka kayıtları panelden giriliyor; alanı boş bırakılan künye satırı gösterilmiyor.

06 · Teklif formu
Üç adım: proje bilgisi, iletişim, fotoğraf. Yanında sürecin ne olduğu yazıyor — form otomatik fiyat vermiyor, verdiği söz keşif.
Neden böyle kuruldu
- 01
Doğrulanmamış iddia arayüze çıkamıyor
Sayılarla şirket, referans ve müşteri yorumu bölümleri kayıt yoksa hiç render edilmiyor; şema tarafında puan ve yorum asla üretilmiyor. Kural metinde değil kodda duruyor, çünkü metinde duran kural ilk içerik girişinde bozuluyor.
- 02
Veritabanı düşerse site ayakta kalıyor
Tüm sorgular hatayı loglayıp nötr yedek içeriğe düşen bir sarmalayıcıdan geçiyor. Böylece veritabanı erişilemediğinde ziyaretçi hata sayfası değil sitenin kendisini görüyor, build de veritabanı olmadan geçiyor.
- 03
Panel iki katmanda korunuyor
Oturum kontrolü hem istek Next'e girmeden (edge) hem de panel layout'unun içinde yapılıyor. Tek katman, bir route'un yanlışlıkla korumasız eklenmesine açık kapı bırakıyordu.
- 04
Bot koruması çerezsiz üç katman
Turnstile, honeypot alanı ve istek hızı sınırı birlikte çalışıyor; hiçbiri ziyaretçiye çerez bırakmıyor. Form gönderimlerinde IP ham olarak saklanmıyor, yalnızca tuzlanmış özeti tutuluyor.
Teknoloji yığını
Uygulama
- Next.js 16 (App Router)
- React 19
- TypeScript
- Server Actions
Veri
- PostgreSQL
- Prisma
- Zod
- Argon2id
- JWT (jose)
Arayüz
- Tailwind CSS v4
- Radix UI
- React Hook Form
- TipTap
Servisler
- Cloudflare R2 / S3
- Resend
- Turnstile
- Docker
Teslim
Site ve panel çalışır durumda teslim edildi: 19 public sayfa şablonu, 28 panel ekranı, 22 veri modeli. İçeriğin tamamı panelden düzenlenebiliyor, teklif talepleri kazanıldı/kaybedildi aşamasına kadar burada takip ediliyor. Yayın sonrası bakım ve içerik desteği sürüyor.
Benzer bir uygulama mı düşünüyorsunuz?
Fikrinizi birkaç cümleyle yazın; yapılabilirliği ve yaklaşık süresi hakkında dürüst bir değerlendirmeyle dönüş yapayım.