panel.go

module
v0.0.0-...-83c8914 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 22, 2026 License: MIT

README

Panel.go

Panel.go, Go + GORM ile admin paneli ve CRUD API'yi hızlıca ayağa kaldırmak için geliştirilmiş bir framework'tür.

Bu repo içinde hem SDK hem de panel CLI bulunur.

Kimin için?

  • Go backend geliştiricileri
  • GORM kullanan ekipler
  • Admin panelini sıfırdan yazmak yerine hızlıca üretmek isteyen projeler

Neler sunar?

  • Resource tabanlı yapı (model, field, policy, repository)
  • Otomatik CRUD endpoint'leri
  • Hazır admin UI (Go binary içine gömülü)
  • Relationship field'ları (BelongsTo, HasMany, BelongsToMany, MorphTo)
  • Policy ve rol/izin yönetimi
  • Lens, Action, Page ve Widget desteği
  • OpenAPI/Swagger üretimi
  • Plugin sistemi

Hızlı Başlangıç

1) SDK'yı projene ekle
go get github.com/ferdiunal/panel.go
2) CLI kur (önerilen)
go install github.com/ferdiunal/panel.go/cmd/panel@latest
3) Proje iskeletini üret
panel init

Bu komut:

  • başlangıç dosyalarını oluşturur
  • veritabanı seçimine göre örnek konfigürasyon yazar
  • .panel/stubs/ ve .claude/skills/ dosyalarını yayınlar

Detay: docs/CLI_INIT.md

4) Uygulamayı çalıştır

main.go içinde paneli başlatıp resource'larını kaydet:

cfg := panel.Config{
    Server: panel.ServerConfig{Host: "localhost", Port: "8080"},
    Database: panel.DatabaseConfig{Instance: db},
    Environment: "development",
}

app := panel.New(cfg)
app.RegisterResource(GetUserResource())
app.Start()

İlk resource örneği için: docs/Getting-Started.md

Otomatik Açılan API Yapısı

Bir resource register edildiğinde bu endpoint'ler otomatik gelir:

  • GET /api/resource/{slug}
  • POST /api/resource/{slug}
  • GET /api/resource/{slug}/:id
  • PUT /api/resource/{slug}/:id
  • DELETE /api/resource/{slug}/:id

Dokümantasyon Rotası (Son Kullanıcı)

1. Kurulum ve temel kullanım
2. Güvenlik ve erişim
3. Arayüzü zenginleştirme
4. API ve entegrasyon
5. İleri seviye

Tam menü: docs/_Sidebar.md

CLI Kısa Komutlar

panel make:resource Product
panel make:model Product
panel make:page Dashboard
panel make:lens ActiveProducts --resource product
panel make:action Publish --resource post

Plugin komutları için: docs/PLUGIN_CLI.md

Notlar

  • UI dosyaları repo içinde gömülü gelir; normal kullanımda ayrıca frontend build zorunlu değildir.
  • Frontend tarafında değişiklik yaparsan make build-ui ile UI varlıklarını yeniden üretmelisin.

Lisans

MIT

Directories

Path Synopsis
cmd
cli command
panel command
Bu paket, Panel CLI uygulamasının ana giriş noktasıdır.
Bu paket, Panel CLI uygulamasının ana giriş noktasıdır.
examples
actions command
metrics command
simple command
pkg
action
Bu paket, panel uygulamasında kullanılan yerleşik (built-in) action'ları tanımlar.
Bu paket, panel uygulamasında kullanılan yerleşik (built-in) action'ları tanımlar.
context
/ # Context Paketi - Fiber HTTP İstekleri için Tür-Güvenli Bağlam Yönetimi / / Bu paket, Fiber web framework'ü ile çalışırken tür-güvenli bir bağlam (context) sağlar.
/ # Context Paketi - Fiber HTTP İstekleri için Tür-Güvenli Bağlam Yönetimi / / Bu paket, Fiber web framework'ü ile çalışırken tür-güvenli bir bağlam (context) sağlar.
core
Package core, panel sisteminin temel interface'lerini ve tiplerini sağlar.
Package core, panel sisteminin temel interface'lerini ve tiplerini sağlar.
data/orm
Package orm, veritabanı işlemleri için repository pattern'ı uygulayan veri erişim katmanını içerir.
Package orm, veritabanı işlemleri için repository pattern'ı uygulayan veri erişim katmanını içerir.
domain/account
Bu paket, kullanıcı hesaplarının (account) domain modelini ve repository arayüzünü tanımlar.
Bu paket, kullanıcı hesaplarının (account) domain modelini ve repository arayüzünü tanımlar.
domain/notification
Package domain, bildirim (notification) domain modellerini ve işlemlerini içerir.
Package domain, bildirim (notification) domain modellerini ve işlemlerini içerir.
domain/session
Bu paket, kullanıcı oturumlarının (session) yönetimini sağlayan domain katmanını içerir.
Bu paket, kullanıcı oturumlarının (session) yönetimini sağlayan domain katmanını içerir.
domain/setting
Package setting, uygulama ayarlarının yönetimi için domain katmanını sağlar.
Package setting, uygulama ayarlarının yönetimi için domain katmanını sağlar.
domain/user
Bu paket, kullanıcı domain modelini ve repository arayüzünü tanımlar.
Bu paket, kullanıcı domain modelini ve repository arayüzünü tanımlar.
domain/verification
Bu paket, e-posta doğrulama ve kullanıcı kimlik doğrulama işlemlerini yönetmek için gerekli veri yapılarını ve repository arayüzünü tanımlar.
Bu paket, e-posta doğrulama ve kullanıcı kimlik doğrulama işlemlerini yönetmek için gerekli veri yapılarını ve repository arayüzünü tanımlar.
fields
Package fields, admin panel için alan (field) tanımlamalarını sağlar.
Package fields, admin panel için alan (field) tanımlamalarını sağlar.
handler/auth
Package auth, kimlik doğrulama (authentication) işlemlerini yöneten HTTP handler'larını içerir.
Package auth, kimlik doğrulama (authentication) işlemlerini yöneten HTTP handler'larını içerir.
i18n
Package i18n provides internationalization helpers for Panel.go Yaygın __() helper API'sine benzer şekilde çalışır
Package i18n provides internationalization helpers for Panel.go Yaygın __() helper API'sine benzer şekilde çalışır
notification
Bu paket, bildirim (notification) işlemlerini yönetmek için gerekli servisleri içerir.
Bu paket, bildirim (notification) işlemlerini yönetmek için gerekli servisleri içerir.
openapi
Package openapi, özel field type mapping'lerini yönetir.
Package openapi, özel field type mapping'lerini yönetir.
page
Package page, panel uygulamasında özel sayfaları (Dashboard, Ayarlar vb.) tanımlamak ve yönetmek için kullanılır.
Package page, panel uygulamasında özel sayfaları (Dashboard, Ayarlar vb.) tanımlamak ve yönetmek için kullanılır.
panel
Package panel, Panel uygulamasının temel bileşenlerini ve varlıklarını yönetir.
Package panel, Panel uygulamasının temel bileşenlerini ve varlıklarını yönetir.
plugin
Package plugin, Panel.go plugin sistemi için UI build işlemlerini sağlar.
Package plugin, Panel.go plugin sistemi için UI build işlemlerini sağlar.
resource/account
Bu paket, Account kaynağı için alan çözücü (field resolver) işlevselliğini sağlar.
Bu paket, Account kaynağı için alan çözücü (field resolver) işlevselliğini sağlar.
resource/session
Package session, oturum (session) yönetimi ile ilgili kaynakları ve çözücüleri içerir.
Package session, oturum (session) yönetimi ile ilgili kaynakları ve çözücüleri içerir.
resource/user
Package user, kullanıcı yönetimi ile ilgili tüm işlevleri içerir.
Package user, kullanıcı yönetimi ile ilgili tüm işlevleri içerir.
resource/verification
Package verification, doğrulama (verification) işlemleriyle ilgili card resolver'ları ve widget'ları yönetmek için kullanılan paket.
Package verification, doğrulama (verification) işlemleriyle ilgili card resolver'ları ve widget'ları yönetmek için kullanılan paket.
rtl
Package rtl provides RTL (Right-to-Left) support utilities for Panel.go Arapça, İbranice, Farsça gibi sağdan sola yazılan diller için destek sağlar
Package rtl provides RTL (Right-to-Left) support utilities for Panel.go Arapça, İbranice, Farsça gibi sağdan sola yazılan diller için destek sağlar
service/auth
Bu paket, kimlik doğrulama (authentication) işlemlerini yönetir.
Bu paket, kimlik doğrulama (authentication) işlemlerini yönetir.
widget
Package widget, panel.go uygulamasının dashboard widget'larını içerir.
Package widget, panel.go uygulamasının dashboard widget'larını içerir.
plugins
shared
encrypt
Package encrypt, AES-256 şifreleme ve şifre çözme işlemleri için güvenli kriptografik fonksiyonlar sağlar.
Package encrypt, AES-256 şifreleme ve şifre çözme işlemleri için güvenli kriptografik fonksiyonlar sağlar.
uuid
Bu paket, UUID (Universally Unique Identifier) oluşturma işlemlerini yönetir.
Bu paket, UUID (Universally Unique Identifier) oluşturma işlemlerini yönetir.
validate
Bu paket, yapı (struct) doğrulaması ve hata yönetimi için merkezi bir doğrulama sistemi sağlar.
Bu paket, yapı (struct) doğrulaması ve hata yönetimi için merkezi bir doğrulama sistemi sağlar.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL