Geliştirici araçları ve API şirketleri için bir changelog aracı.
Döngüyü kapatan bir changelog.
Kullanıcıların bir şey ister. Ekibin teslim eder. İsteyen kişi haberdar olur. Kayıtlar birleştirilmiş pull request'lerden hazırlanır, incelemen için bekler, sonra bir JSON akışına veya ürününün içindeki iki satırlık bir widget'a yayımlanır.
Tek depo için ücretsiz. Kredi kartı gerekmez.
Karanlık mod geldi
Ayarlar'dan aç ya da sistem temasını izlemesine izin ver.
İstendiği issue #482'de paylaşıldı
Webhook'lar 24 saat boyunca yeniden denenir
Başarısız teslimatlar backoff ile yeniden denenir ve her deneme panoda görünür.
CSV dışa aktarımları saat dilimini korur
Dışa aktarımdaki zaman damgaları artık uygulamadakilerle aynı.
Kullanıcılarının okuduğu sayfa bu. Birleştirilmiş pull request'ten hazırlanır, onayladığında yayımlanır.
- Her planda herkese açık JSON akışı
- İki satırla widget gömme
- Taslaklar varsayılan olarak incelemeyi bekler
- Tek depo için ücretsiz, kart yok
Changelog'un, kendi kodunla renderlanır
Akış, herhangi bir kaynağa açık CORS'lu, sade herkese açık bir endpoint'tir, dolayısıyla onu bir sayfadan, bir build adımından veya curl ile okuyabilirsin. On satır React ve changelog'un, bir bağlantı uzağında olmak yerine ürününün bir parçası olur.
- Depoya göre filtrele, bir imleçle sayfala, çağrı başına 50'ye kadar kayıt
- Güçlü ETag ve 60 saniyelik Cache-Control, böylece değişmemiş bir akış 304 yanıtı verir
- Ayrıca üç sabit sütunlu bir roadmap akışı: planned, building, shipped
const ID = 'YOUR_ID'; const API = 'https://api.changeloop.dev'; export function Changelog() { const [entries, setEntries] = useState([]); useEffect(() => { fetch(`${API}/v1/public/${ID}/changelog.json`) .then((r) => r.json()) .then((feed) => setEntries(feed.data)); }, []); return entries.map((e) => <Entry key={e.id} {...e} />); }
Ya da iki satırla göm
Bir shadow root içine render eden bir custom element, bu yüzden stillerini ne devralır ne de onlara sızar. Üç sekmesi var: güncellemelerin, roadmap'in ve kullanıcılarının yazabileceği bir kutu.
- İki öznitelik, akış kimliğin ve API kaynağın
- Bir sürümü sabitle, byte'ları asla değişmesin, ya da otomatik olarak en yeni build'i al
- npm paketi yok, build adımı yok, döndürülecek anahtar yok
Birleştirmede hazırlanır, bir kişi için bekletilir
Bir pull request varsayılan branşına birleştirilir. Changeloop başlığını ve açıklamasını okur ve ürününü kullanan kişiler için bir kayıt yazar. Kaynak kodun buna asla dahil olmaz.
- Bağımlılık güncellemeleri, CI işleri ve refactor'lar, herhangi bir şey hazırlanmadan önce filtrelenir
- Taslaklar inceleme kutusunda bekler, burada metni düzenler, onaylar veya reddedersin
- Otomatik yayımlama depo başına vardır, sen açana kadar kapalıdır
Karanlık mod geldi
Ayarlar'dan aç ya da sistem temasını izlemesine izin ver.
Bir istek issue olarak gelir, kayıt olarak çıkar
GitHub'da widget'ın geri bildirim kutusu kendi deponda etiketli bir issue açar, böylece zaten yaptığın triyaja girer. fixes #12 diyen bir pull request'i birleştir, kaydı onayla, o issue'ya teslim edilenin bağlantısıyla yorum bırakırız.
- Her issue'da üç etiket: bug veya feature-request, bir öncelik ve from-widget
- Gönderenin e-posta adresi issue'ya veya onu sınıflandıran modele asla ulaşmaz
- Durumu widget'ta kendileri kontrol ederler. Onlara henüz e-posta göndermiyoruz.
Karanlık mod, lütfen
Geri bildirim widget'ından otomatik olarak dosyalandı.
Teslim edildi: gelen kutusunda kayıtlı görünümler
Her planda dahil
Changelog JSON akışı
Yayımlanan kayıtlar en yeniden eskiye sıralanır, depoya göre filtrelenebilir ve opak bir imleçle sayfalanır.
Roadmap JSON akışı
Planned, building ve shipped, hep bu sırayla, kendi GitHub issue'larındaki etiketlerle yönetilir.
Gömülebilir widget
Shadow root içinde çalışan bir custom element: güncellemeler, roadmap ve geri bildirim üç sekmede.
Yedek olarak barındırılan bir sayfa
Akışın için sade bir sayfa: kendi arayüzünü kurmadan önceki dönem ve issue'lara bıraktığımız bağlantılar için.
Birleştirilmiş pull request'lerden hazırlanır
Bir birleştirmenin başlığı ve açıklaması kullanıcıya yönelik bir kayda dönüşür. Kod değil.
İnceleme kutusu
Metni düzenle, onayla ya da reddet. Reddedilen bir taslak daha sonra geri yüklenebilir.
İç değişiklikler filtrelenir
Bağımlılık güncellemeleri, CI değişiklikleri, refactor'lar ve yazım hatası düzeltmeleri kuyruğa hiç ulaşmaz.
Geri bildirim kendi GitHub deponda
GitHub'da widget'tan gelen gönderimler, gönderenin e-posta adresi çıkarılmış olarak deponda etiketli issue'lar açar. GitLab ve Bitbucket projeleri yalnızca changelog'u besler.
Ekip için sabit fiyat
Team planında sınırsız depo için tek fiyat. Depo başına ek ücret yok.
Bir geliştiricinin önce sorduğu sorular
Changelog'u kendi arayüzümde renderlayabilir miyim?
Evet, asıl amaç da bu. Yayımlanan her kayıt, her kaynağa açık CORS'lu, anahtar ve giriş gerektirmeyen herkese açık bir JSON akışından sunulur, bu yüzden onu kendi bileşenlerinde renderlamak için on satır React yeterli. Her endpoint, alan ve durum kodu geliştirici dokümantasyonunda.
Widget benden ne istiyor?
Bir script etiketi ve iki öznitelikli tek bir eleman: akış kimliğin ve API kaynağın. Bir shadow root içine render eder, bu yüzden senin CSS'in ile onunki hiç karşılaşmaz. Güncellemeleri, roadmap'i ve bir geri bildirim kutusunu gösterir.
Changeloop depomdan ne okuyor?
GitHub'da, varsayılan branşına birleştirilen pull request'lerin başlığını ve açıklamasını, ayrıca depo meta verilerini. GitHub App'in depondaki dosyaları okuma izni yok, Changeloop'un her derlemesi asla diff istemediğinden emin olmak için kontrol edilir ve gizli bilgiye benzeyen her şey taslak yazılmadan önce kaldırılır. Kişisel erişim belirteci yerine kısa ömürlü kurulum belirteçleriyle çalışır. GitLab ve Bitbucket aynı türden verileri senin eklediğin bir webhook üzerinden gönderir.
Benden habersiz bir şey yayımlanır mı?
Sen istemedikçe hayır. Taslaklar biri onaylayana kadar inceleme kutusunda bekler; otomatik yayımlama ise depo başına bir ayardır ve sen açana kadar kapalı kalır.
Kullanıcılarımın gönderdiği geri bildirime ne oluyor?
GitHub'da kendi deponda etiketli bir issue açar: bug veya feature-request, bir öncelik ve from-widget etiketiyle, böylece zaten yaptığın triyaja girer. Bir GitLab veya Bitbucket projesi changelog'unu besler ama bunu yapmaz. Issue açmak, bilerek istemediğimiz bir erişim belirteci gerektirir ve Bitbucket, Ağustos 2026'da issue takip sistemini kaldırdı. Gönderenin e-posta adresi, mesaj o issue'ya veya onu sınıflandıran modele ulaşmadan önce çıkarılır. Bunu teslim eden kaydı onayladığında, o issue'ya teslim edilenin bağlantısıyla yorum bırakırız ve gönderen durumu widget'ta görebilir. Ona e-posta göndermiyoruz, o kısım henüz yapılmadı.
Ne ücretsiz, ne ücretli?
Ücretsiz plan, ayda 20 AI oluşturmayla tek bir depoyu kapsar ve changelog akışını, roadmap akışını, widget'ı ve barındırılan sayfayı içerir. Team planı, sınırsız depo için tek bir sabit fiyattır.
BLOGDAN
Uygulamadan notlar
Pratikte release notları
İnsanların gerçekten okuduğu release notes nasıl yazılır
API değişiklikleri
Breaking change nedir, ve nasıl gönderilir
Geri bildirim döngüsü
Geri bildirim döngüsünü changelog tarafından kapatmak
Changelog'unu ürününün içine koy.
Ücretsiz bir hesap oluştur, bir depo bağla ve kendi arayüzünü akışa yönlendir.


