{o.baslik}{o.yeni && Yeni}
{o.metin}
import React, { useEffect, useRef, useState } from 'react'; import { ArrowRight, Bell, Building2, CalendarDays, ChartNoAxesCombined, CheckCircle2, FileSearch, Gavel, Kanban, MapPin, Radar, Sparkles, Tag, Timer, TrendingUp, Zap, Microscope, FileSignature, Package, Search, Calculator, Trophy, Send, FolderCheck, ScanText, BookOpen, Smartphone, Plug, CalendarClock, MessageSquareText, FolderSearch, ShieldAlert } from 'lucide-react'; /* ---------- yeni eklenenler ---------- */ const YENILIKLER = [ { icon: MessageSquareText, baslik: 'Teklif Asistanı: belgeye sor, taslağı denetle, taslak üret', metin: 'Detaydaki yeni sekme: dokümana “teminat ne kadar?” diye sorun ([n] atıflı yanıt), teklif metninizi gerekliliklerle denetleyin (karşılanıyor / eksik / belirsiz), kapak-teknik-ticari taslağı üretin; rakam uydurmaz.' }, { icon: FolderSearch, baslik: 'Yeterlilik eşleştirme', metin: 'Derin analizin belge kontrol listesindeki her madde Doküman Deposu’ndaki evrakla eşlenir: Depoda hazır / Yakında dolacak / Süresi dolmuş / Depoda yok.' }, { icon: Plug, baslik: 'MCP sunucusu + RSS', metin: 'Claude Code, Cursor ve Claude Desktop’tan İhaleist’i doğrudan sorgulayın (ihale ara, sonuç ara, kalem ara, yaklaşan tarihler); filtreli RSS beslemesini okuyucunuza veya Slack’e ekleyin.' }, { icon: CalendarClock, baslik: 'Yaklaşan ihale tarihleri + haftalık brief', metin: 'Sağ panelde takipli ihalelerin 14 günlük geri sayımı; her Pazartesi 08:00 bu hafta yapılacaklar ve geçen hafta sonuçlananlar Telegram + e-postayla tek mesajda.' }, { icon: ShieldAlert, baslik: '5 yeni kırmızı bayrak kuralı', metin: 'Kısa süre, hafta sonu tarih, geç sözleşme, kazananı gizli ve doğrudan temin parçalama şüphesi (aynı idare + sektörde 30 günde 3+ DT) mevcut kurallara eklendi.' }, { icon: FileSignature, baslik: 'İhale dosyası hazırla', metin: 'Analizden sonra teklif mektubu, birim fiyat cetveli ve evrak listesi tek tıkla; eksik bilgiyi sorar, yazıyla tutarı kendisi yazar, yazdırmaya hazır çıkarır.' }, { icon: Package, baslik: 'Kartta teklif cetveli kalemleri', metin: 'Şartname indirmeden kalem adı, miktar ve birim ihale kartında. Ortak havuz: bir kullanıcının yüklediği doküman herkesin kartını doldurur.' }, { icon: Search, baslik: 'Ürün arama — cetvel ve şartname içinde', metin: 'Ürününüzün adıyla EKAP teklif cetveli ve teknik şartnamelerin içinde arayın; OKAS koduyla da tarayın. Başlıkta geçmeyen ihaleleri bulun.' }, { icon: Sparkles, baslik: 'Uyum skoru ve firma eşiği', metin: 'Firma profilinize göre her ihaleye hibrit (sözcük + anlamsal) uyum puanı; eşiğinizi kaydırın, yalnızca size uyanları görün, “Şirketime en uyumlu” sıralayın.' }, { icon: Calculator, baslik: 'Sınır değer hesaplayıcı', metin: 'Kamu İhale Genel Tebliği 2026 formülleriyle hizmet, personel dayalı, mal ve yapım işleri için sınır değer; aşırı düşük sorgusuna kimin gireceğini önceden görün.' }, { icon: Trophy, baslik: 'Kazanan istihbaratı', metin: 'Rakip firmanın kazandığı ihaleler, ortalama teklif, kırım oranı ve tek teklif oranı — kısmi ihale tuzağı ayıklanmış olarak.' }, { icon: Send, baslik: 'Zeyilname, sonuç ve Telegram', metin: 'Takipteki ihalede zeyilname/tarih değişimi ve sonuç açıklanınca uygulama içi bildirim, e-posta ve isterseniz Telegram. Kurulum kılavuzu içeride.' }, { icon: FolderCheck, baslik: 'Belge deposu süre takibi', metin: 'İmza sirküleri, ISO, yetki belgesi… toplu yükleyin, kategori ve son geçerlilik girin; süresi dolmadan 30 gün önce uyarı gelir.' }, { icon: ScanText, baslik: 'Taranmış PDF için OCR', metin: 'Metin katmanı olmayan taranmış şartnameler tarayıcıda Türkçe OCR ile okunur; analiz ve kalem çıkarımı bunlarda da çalışır.' }, { icon: BookOpen, baslik: 'Her ekranda kullanım kılavuzu', metin: 'Sağ alttaki “?” ya da klavyeden ? — bulunduğunuz ekrana özel adım adım kılavuz yan panelde açılır.' }, { icon: Smartphone, baslik: 'Mobil uyumlu PWA', metin: 'Telefon ana ekranına ekleyin; filtreler çekmecede, kartlar tek sütunda. Bildirimler ve çevrimdışı kabukla cebinizde.' }, ]; /* ---------- yardımcılar ---------- */ const useReveal = () => { useEffect(() => { const els = document.querySelectorAll('.lp-reveal'); const io = new IntersectionObserver( (entries) => entries.forEach((e) => e.isIntersecting && e.target.classList.add('lp-in')), { threshold: 0.14 } ); els.forEach((el) => io.observe(el)); return () => io.disconnect(); }, []); }; const CountUp = ({ to, suffix = '', duration = 1600 }) => { const ref = useRef(null); const [val, setVal] = useState(0); useEffect(() => { const el = ref.current; if (!el) return; let raf, started = false; const io = new IntersectionObserver(([entry]) => { if (!entry.isIntersecting || started) return; started = true; const t0 = performance.now(); const tick = (t) => { const p = Math.min(1, (t - t0) / duration); setVal(Math.round(to * (1 - Math.pow(1 - p, 3)))); if (p < 1) raf = requestAnimationFrame(tick); }; raf = requestAnimationFrame(tick); }, { threshold: 0.5 }); io.observe(el); return () => { io.disconnect(); cancelAnimationFrame(raf); }; }, [to, duration]); return {val.toLocaleString('tr-TR')}{suffix}; }; /* ---------- örnek akış verisi (görsel amaçlı) ---------- */ const TICKER = [ { k: 'Yapım İşi', t: 'Okul binası güçlendirme', c: 'Ankara', renk: '#fbbf24' }, { k: 'Mal Alımı', t: 'Tıbbi sarf malzemesi', c: 'İzmir', renk: '#22d3ee' }, { k: 'Hizmet', t: 'Personel taşıma 12 ay', c: 'Bursa', renk: '#a78bfa' }, { k: '22/d', t: 'Bilgisayar ve çevre birimleri', c: 'İstanbul', renk: '#34d399' }, { k: 'Yapım İşi', t: 'İçme suyu hattı yenileme', c: 'Konya', renk: '#fbbf24' }, { k: 'Mal Alımı', t: 'Araç lastiği alımı', c: 'Antalya', renk: '#22d3ee' }, { k: 'Hizmet', t: 'Yemek hazırlama ve dağıtım', c: 'Gaziantep', renk: '#a78bfa' }, { k: '22/d', t: 'Kırtasiye malzemesi', c: 'Trabzon', renk: '#34d399' }, ]; const OZELLIKLER = [ { icon: Zap, baslik: 'Canlı ihale akışı', metin: 'ilan.gov.tr ilanları dakikalar içinde ekranınızda. Şehir, sektör ve bütçeye göre süzün; hiçbir fırsatı kaçırmayın.', renk: 'from-cyan-400/20 to-cyan-400/0', ikon: 'text-cyan-300' }, { icon: FileSearch, baslik: 'AI şartname analizi', metin: 'Yüzlerce sayfalık şartnameyi yükleyin; yeterlilik şartları, riskler ve kritik tarihler saniyeler içinde özetlensin.', renk: 'from-amber-400/20 to-amber-400/0', ikon: 'text-amber-300' }, { icon: Kanban, baslik: 'Kanban süreç takibi', metin: 'İlgilendiğiniz ihaleleri panoya taşıyın: İnceleme → Teklif Hazırlığı → Verildi → Sonuç. Ekipçe aynı ekranda.', renk: 'from-violet-400/20 to-violet-400/0', ikon: 'text-violet-300' }, { icon: Radar, baslik: 'Rakip radarı', metin: 'Hangi firma hangi ihaleyi, hangi bedelle kazandı? Rakiplerinizin izini sürün, stratejinizi veriyle kurun.', renk: 'from-rose-400/20 to-rose-400/0', ikon: 'text-rose-300' }, { icon: TrendingUp, baslik: 'Fiyat & piyasa analizi', metin: 'Geçmiş sonuçlardan yaklaşık maliyet ve kırım oranı analizi. Teklifinizi tahminle değil, veriyle verin.', renk: 'from-emerald-400/20 to-emerald-400/0', ikon: 'text-emerald-300' }, { icon: Bell, baslik: 'Günlük bülten & uyarılar', metin: 'Kriterlerinize uyan yeni ilanlar her sabah e-postanızda. Son teklif tarihi yaklaşınca otomatik hatırlatma.', renk: 'from-sky-400/20 to-sky-400/0', ikon: 'text-sky-300' }, { icon: Microscope, baslik: 'Derin analiz + yol haritası', yeni: true, metin: 'Şartname, sözleşme ve teklif cetvelini birlikte okur: elenme riskleri, gözden kaçan ince detaylar, kalem özellikleri, belge kontrol listesi ve teklif gününe geri sayan adım adım yol haritası.', renk: 'from-fuchsia-400/20 to-fuchsia-400/0', ikon: 'text-fuchsia-300' }, { icon: Tag, baslik: 'AB uyumlu CPV sınıflandırması', metin: 'Türkiye\'de bir ilk: her ihale, Avrupa Birliği standardı CPV koduna göre otomatik sınıflandırılır. Sektörünüze uyan ihaleleri AB standardında filtreleyin.', renk: 'from-teal-400/20 to-teal-400/0', ikon: 'text-teal-300' }, ]; /* ---------- bileşenler ---------- */ const TickerRow = ({ reverse = false }) => (
{metin}
İhaleist; canlı ilan akışını, yapay zekâ destekli şartname analizini, rakip takibini ve fiyat analizini tek panelde toplar. Siz teklife odaklanın, takibi biz yapalım.
EKAP'ta, gazete ilanlarında, kurum sitelerinde dağınık duran her şey — tek akışta, süzülmüş ve önceliklendirilmiş.
{o.metin}
Analizden teklif dosyasına, sınır değerden Telegram uyarısına — son güncellemeyle eklenen {YENILIKLER.length} yeni yetenek.
{y.metin}
Bugün girin, kriterlerinizi kurun; yarın sabah ilk bülteniniz hazır olsun.