Command Palette

Search for a command to run...

What is StatiGo

Statigo odaklı, SEO optimize edilmiş web siteleri oluşturmak için hafif bir Go web çerçevesi.

Statigo Nedir?

Statigo, performansı ve arama motoru optimizasyonunu önceliklendiren içerik odaklı web siteleri için tasarlanmış bir çerçevedir. Dinamik ağırlıklı çerçevelerin aksine, Statigo statik odaklı bir yaklaşım benimser:

  • Anında sayfa yüklemeleri ve mükemmel SEO için Sayfaları derleme zamanında önceden oluşturma
  • Varsayılan olarak statik HTML sunma, isteğe bağlı dinamik özelliklerle
  • İki katmanlı (bellek + disk) önbellekleme sistemiyle Her şeyi önbelleğe alma
  • Tüm varlıklar gömülü olarak Tek bir ikili dosya olarak dağıtma

Dokümantasyon siteleri, bloglar, pazarlama sayfaları ve gerçek zamanlı dinamik özelliklerden ziyade hız ve SEO'nun daha önemli olduğu içerik odaklı web uygulamaları için idealdir.

Özellikler

  • Performans - Brotli sıkıştırmalı iki katmanlı önbellekleme (bellek + disk)
  • SEO - Canonical URL'ler, hreflang bağlantıları, site haritaları ve yapılandırılmış veriler
  • i18n - URL tabanlı dil yönlendirmesi ile çok dilli destek
  • Güvenlik - Hız sınırlama, IP engelleme, honeypot, güvenlik başlıkları
  • Dağıtım - Gömülü varlıklarla tek bir ikili dosya
  • CLI - Önceden oluşturma ve önbellek yönetimi komutları

Hızlı Başlangıç

# Depoyu klonlayın
git clone https://github.com/statigo/statigo.git
cd statigo

# Geliştirme sunucusunu çalıştırın
make dev

# Veya derleyin ve çalıştırın
make build
./statigo

Örnek siteyi görmek için http://localhost:8080 adresini ziyaret edin.

Dokümantasyon

Proje Yapısı

statigo/
├── framework/ # Çerçeve paketleri
│ ├── router/ # Çok dilli yönlendirme
│ ├── middleware/ # HTTP ara yazılım
│ ├── cache/ # İki katmanlı önbellekleme
│ ├── templates/ # HTML oluşturma
│ ├── i18n/ # Uluslararasılaştırma
│ ├── security/ # IP yasaklama listesi
│ ├── health/ # Sağlık kontrolleri
│ ├── logger/ # Yapılandırılmış günlük kaydı
│ ├── client/ # HTTP istemcisi
│ ├── cli/ # CLI komutları
│ └── ...
├── example/ # Örnek işleyiciler
├── templates/ # HTML şablonları
├── static/ # Statik varlıklar
├── çeviriler/ # Çeviri dosyaları
├── config/ # Yapılandırma dosyaları
└── main.go # Uygulama giriş noktası

Yapılandırma

.env.example dosyasını .env olarak kopyalayın ve yapılandırın:

PORT=8080
BASE_URL=http://localhost:8080
LOG_LEVEL=INFO
CACHE_DIR=./data/cache
RATE_LIMIT_RPS=10
RATE_LIMIT_BURST=20

Lisans

MIT Lisansı - ayrıntılar için LICENSE dosyasına bakın.