Files
poyraz-portfolio/README.md
T

3.2 KiB

Portfolio New

Poyraz Avsever icin hazirlanmis, Next.js + poyraz-ui tabanli portfolyo ve ayni repoda yer alan Electron tabanli veri yonetim paneli.

Monorepo Yapisi

.
|- app/                  # Next.js route'lari
|- components/           # UI component'leri
|- content/              # Markdown icerikleri (blog, podcast)
|- data/                 # TypeScript veri kaynaklari
|- public/               # Statik dosyalar
|- apps/
|  |- data-panel/        # Electron dashboard (icerik yonetimi + publish)

Gereksinimler

  • Node.js 20+
  • pnpm 9+
  • Git

Kurulum

pnpm install

Frontend Komutlari

pnpm dev        # Next.js local
pnpm lint       # ESLint
pnpm build      # Production build
pnpm start      # Production run

Electron Data Panel Komutlari

pnpm panel:dev            # Electron panel (development)
pnpm panel:clean          # apps/data-panel/dist temizle
pnpm panel:pack           # Paket test (unpacked)
pnpm panel:dist           # Tum hedefler icin distributable
pnpm panel:dist:win       # Windows NSIS installer
pnpm panel:dist:portable  # Windows portable exe

Icerik Kaynaklari

  • Blog markdown: content/blog/*.md
  • Podcast markdown:
    • content/podcasts/yazilim/*.md
    • content/podcasts/masa-basi/*.md
  • Site verileri: data/*.ts

Electron Panel Neleri Yapar?

  • Blog/podcast icerigi olusturma-guncelleme-silme
  • data/*.ts export dizilerini form tabanli yonetme
  • public/ altina medya yukleme/silme
  • git add + commit + push ile yayinlama akisi

Open-Source ve Ozellestirme Rehberi

1) Dashboard tab/field ozellestirme

Paneldeki koleksiyonlar ve form alanlari su dosyadan yonetilir:

  • apps/data-panel/renderer/configs.js

Buradan:

  • yeni tab/collection ekleyebilir,
  • alan tiplerini (text, textarea, number, url) degistirebilir,
  • kart gorunumunu (card) ozellestirebilirsin.

2) Farkli repo koku ile calistirma

Panel varsayilan olarak bu monorepo kokunu kullanir. Farkli klasor icin:

  • Cevresel degisken: PORTFOLIO_WORKSPACE_ROOT
  • veya CLI arguman: --workspace-root=<path>

Ornek (PowerShell):

$env:PORTFOLIO_WORKSPACE_ROOT = "D:\my-portfolio-repo"
pnpm panel:dev

Ornek (packaged exe):

.\apps\data-panel\dist\portfolio-data-panel-0.1.0-x64-portable.exe --workspace-root="D:\my-portfolio-repo"

Panel baslarken data, public, content/blog, content/podcasts klasorlerini dogrular.

3) Publish akisini degistirme

Git publish akisi apps/data-panel/main.cjs icindeki publishChanges fonksiyonunda. Varsayilan akista:

  • git add data public content
  • otomatik/manuel commit message
  • git push

Istersen branch secimi, PR tabanli akış, veya sadece commit modlari ekleyebilirsin.

Release Checklist

  1. pnpm lint
  2. pnpm build
  3. Icerik/veri kontrolu (content/, data/, public/)
  4. Electron panel akisi kontrolu (pnpm panel:dev)
  5. Gerekirse distributable kontrolu (pnpm panel:pack / pnpm panel:dist)

Troubleshooting

YouTube cookie/SameSite uyarilari

Embed URL'ler youtube-nocookie.com formatina cekildi. Bu degisiklik cross-site cookie kaynakli konsol gurultusunu azaltir. Tarayici guvenlik politikasi nedeniyle bazi 3rd-party loglar tamamen sifirlanamayabilir; bu durumda uygulama davranisi etkilenmez.