Files
tunapro-garden/v1/index.html

247 lines
13 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!doctype html>
<html lang="tr">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>tunapro — dijital bahçe</title>
<meta name="description" content="Tuna Gül'ün dijital bahçesi: robotik, AI agent'lar, self-host edilen her şey. Bitmiş yazılar değil, büyüyen notlar.">
<style>
:root{
--paper:#faf6ee; --paper-2:#f3ecdd; --ink:#2b2620; --ink-soft:#6b6156;
--green:#3e6b4f; --green-soft:#e4ede4; --amber:#b0752b; --line:#e0d6c3;
--link:#3e6b4f;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
background:var(--paper); color:var(--ink);
font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
line-height:1.65; font-size:17px;
background-image:radial-gradient(circle at 1px 1px, rgba(62,107,79,.06) 1px, transparent 0);
background-size:26px 26px;
}
a{color:var(--link)}
.wrap{max-width:1060px;margin:0 auto;padding:0 24px}
header{padding:64px 0 34px;border-bottom:1px solid var(--line)}
.kicker{font-family:ui-monospace,Menlo,monospace;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--amber)}
h1{font-size:clamp(34px,6vw,52px);font-weight:600;letter-spacing:-.01em;margin:10px 0 14px}
h1 .tilde{color:var(--green)}
.lede{max-width:62ch;color:var(--ink-soft);font-size:18.5px}
.lede strong{color:var(--ink)}
.season{margin-top:18px;font-family:ui-monospace,Menlo,monospace;font-size:13px;color:var(--ink-soft)}
.season b{color:var(--green);font-weight:600}
nav.legend{display:flex;gap:22px;flex-wrap:wrap;padding:16px 0;border-bottom:1px solid var(--line);
font-family:ui-monospace,Menlo,monospace;font-size:13px;color:var(--ink-soft);position:sticky;top:0;
background:color-mix(in srgb, var(--paper) 92%, transparent);backdrop-filter:blur(6px);z-index:5}
nav.legend .item{cursor:default}
nav.legend a{text-decoration:none;color:var(--ink-soft)}
nav.legend a:hover{color:var(--green)}
main{display:grid;grid-template-columns:1fr;gap:0}
.garden{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;padding:38px 0 10px}
.note{
background:#fffdf7;border:1px solid var(--line);border-radius:10px;padding:22px 22px 18px;
position:relative;display:flex;flex-direction:column;gap:10px;
box-shadow:0 1px 2px rgba(43,38,32,.05);
transition:transform .18s ease, box-shadow .18s ease;
}
.note:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(43,38,32,.10)}
.note.wide{grid-column:span 2}
@media(max-width:720px){.note.wide{grid-column:span 1}}
.stage{font-family:ui-monospace,Menlo,monospace;font-size:12px;color:var(--ink-soft);display:flex;justify-content:space-between;align-items:center}
.stage .s{color:var(--green)}
.note h2{font-size:21px;font-weight:600;letter-spacing:-.005em}
.note h2 a{text-decoration:none;color:var(--ink)}
.note h2 a:hover{color:var(--green)}
.note p{font-size:15.5px;color:#463f36}
.note p a{text-decoration:underline;text-decoration-color:#bcd0bf;text-underline-offset:3px}
.note p a:hover{text-decoration-color:var(--green)}
.roots{margin-top:auto;padding-top:10px;border-top:1px dashed var(--line);display:flex;gap:14px;flex-wrap:wrap;
font-family:ui-monospace,Menlo,monospace;font-size:12.5px}
.roots a{text-decoration:none;color:var(--ink-soft)}
.roots a:hover{color:var(--green)}
.roots a::before{content:"↳ ";color:var(--amber)}
.wiki{background:var(--green-soft);border-radius:4px;padding:0 4px;text-decoration:none !important;color:var(--green);white-space:nowrap}
.wiki::before{content:"[["}.wiki::after{content:"]]"}
.wiki::before,.wiki::after{opacity:.45}
.curio{background:linear-gradient(180deg,#fffdf7, #fdf7ea)}
.curio .stage .s{color:var(--amber)}
section.about{margin:44px 0;padding:30px;border:1px solid var(--line);border-radius:12px;background:var(--paper-2);
display:grid;grid-template-columns:1.4fr 1fr;gap:30px}
@media(max-width:720px){section.about{grid-template-columns:1fr}}
section.about h3{font-size:14px;font-family:ui-monospace,Menlo,monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--amber);margin-bottom:12px}
section.about p{color:#463f36;font-size:15.5px;margin-bottom:10px}
.paths{list-style:none;font-size:15px}
.paths li{padding:7px 0;border-bottom:1px dashed var(--line)}
.paths li:last-child{border-bottom:none}
.paths a{text-decoration:none}
.paths .where{font-family:ui-monospace,Menlo,monospace;font-size:12.5px;color:var(--ink-soft);float:right}
footer{padding:34px 0 60px;border-top:1px solid var(--line);margin-top:20px;
display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;
font-family:ui-monospace,Menlo,monospace;font-size:13px;color:var(--ink-soft)}
footer a{color:var(--ink-soft);text-decoration:none}
footer a:hover{color:var(--green)}
.gate{font-size:12.5px}
.gate a{color:var(--amber)}
@media (prefers-reduced-motion: reduce){.note{transition:none}}
</style>
</head>
<body>
<div class="wrap">
<header>
<div class="kicker">tunapro.xyz · dijital bahçe</div>
<h1>Tuna'nın bahçesi<span class="tilde">.</span></h1>
<p class="lede">Burası bir blog değil, bir <strong>bahçe</strong>: robotlar, AI agent'lar ve
kendi sunucumda yaşattığım sikko-ama-sevimli projeler hakkında <strong>büyüyen notlar</strong>.
Hiçbiri bitmiş sayılmaz — kimi daha fide, kimi çınar. Kronolojiye değil, meraka göre gez.</p>
<p class="season">mevsim: <b>yaz 2026</b> · bahçıvan: Tuna Gül · en son sulama: bugün</p>
</header>
<nav class="legend" aria-label="büyüme aşamaları">
<span class="item">🌱 fide — yeni dikildi, kırılgan</span>
<span class="item">🌿 filiz — büyüyor, düzenli sulanıyor</span>
<span class="item">🌳 çınar — köklendi, gölgesinde oturulur</span>
<a href="#hakkinda">bahçıvan kim? ↓</a>
</nav>
<main>
<div class="garden">
<article class="note wide" id="blueprint">
<div class="stage"><span class="s">🌳 çınar</span><span>dikim 2025 · son sulama tem 2026</span></div>
<h2><a href="https://bp.tunapro.xyz">blueprint (bp)</a></h2>
<p>tmux içinde bir AI agent <em>filosunu</em> yöneten orkestrasyon aracı. Paketler
<code>BLUEPRINT.yaml</code> ile tasarlanıyor, snapshot tabanlı versiyonlama ve symlink'le
sabitlenmiş bağımlılıklarla büyüyor. Go ile yazdım; bu bahçedeki çoğu şey gibi
<a class="wiki" href="#homelab">homelab</a>'de kendi kendini barındırıyor.
<a class="wiki" href="#replicant">replicant</a> ve <a class="wiki" href="#outpost">outpost</a>
bu düzenin içinde filizlendi.</p>
<div class="roots">
<a href="https://bp.tunapro.xyz">bp.tunapro.xyz</a>
<a href="https://github.com/tunapro1234/blueprint">github/blueprint</a>
</div>
</article>
<article class="note" id="outpost">
<div class="stage"><span class="s">🌿 filiz</span><span>son sulama: bugün</span></div>
<h2><a href="https://github.com/tunapro1234/outpost">outpost</a></h2>
<p>Graph-merkezli bir outreach aracı: insanlar, bağlantılar ve konuşmalar birer düğüm.
Şu an bahçenin kilitli serası<a href="https://outpost.tunapro.xyz">canlı hali</a> parola
istiyor, çünkü içinde gerçek insanlar var. En sık sulanan fidan bu.</p>
<div class="roots">
<a href="https://github.com/tunapro1234/outpost">github/outpost</a>
<a href="https://outpost.tunapro.xyz">outpost.tunapro.xyz 🔒</a>
</div>
</article>
<article class="note" id="probot">
<div class="stage"><span class="s">🌳 çınar</span><span>MIT · 9★</span></div>
<h2><a href="https://probotstudio.com">Probot Studio</a></h2>
<p><em>«Bir kit, sonsuz robot.»</em> Arduino tabanlı robot yarışmaları için geliştirdiğimiz
kütüphane ve kit ekosistemi. Çekirdeği açık: <code>probot-core</code>, sahada denenmiş
embedded control middleware. <a class="wiki" href="#frc">FRC yıllarımın</a> toprağında yetişti.</p>
<div class="roots">
<a href="https://probotstudio.com">probotstudio.com</a>
<a href="https://github.com/probot-studio/probot-core">github/probot-core</a>
</div>
</article>
<article class="note" id="homelab">
<div class="stage"><span class="s">🌿 filiz</span><span>7/24 vızıldıyor</span></div>
<h2>homelab: *.tunapro.xyz</h2>
<p>Self-host etmediğim şey kalmasın: kod <a href="https://git.tunapro.xyz">Gitea</a>'da,
medya kendi video sunucumda, Minecraft sunucusunun paneli <code>mcdash</code>'te, mail bile
burada. Bu bahçe de dahil — okuduğun sayfa benim demirimde dönüyor.
<a class="wiki" href="#blueprint">blueprint</a> bu makinelerde yaşar.</p>
<div class="roots">
<a href="https://git.tunapro.xyz">git.tunapro.xyz</a>
<a href="https://video.tunapro.xyz">video</a>
<a href="https://mcdash.tunapro.xyz">mcdash</a>
</div>
</article>
<article class="note" id="replicant">
<div class="stage"><span class="s">🌱 fide</span><span>dikim may 2026</span></div>
<h2><a href="https://github.com/tunapro1234/replicant">replicant</a></h2>
<p>AI agent deneyleri: bir agent'ın kendini ve iş arkadaşlarını kopyalayıp çoğaltması üzerine
Python karalamaları. Adı tesadüf değil. Büyüyünce ne olacağını ben de bilmiyorum — fidelerin
güzelliği bu. Kardeşi: <a class="wiki" href="#metron">metron</a>.</p>
<div class="roots"><a href="https://github.com/tunapro1234/replicant">github/replicant</a></div>
</article>
<article class="note" id="metron">
<div class="stage"><span class="s">🌱 fide</span><span>1★</span></div>
<h2><a href="https://github.com/tunapro1234/metron">metron</a></h2>
<p>Ölçmediğin şeyi yönetemezsin: agent'lar ve sistemler için Python'da metrik/ölçüm katmanı.
<a class="wiki" href="#replicant">replicant</a> koşarken metron sayar.</p>
<div class="roots"><a href="https://github.com/tunapro1234/metron">github/metron</a></div>
</article>
<article class="note" id="sims">
<div class="stage"><span class="s">🌱 fide</span><span>okuma listesi büyüyor</span></div>
<h2>LLM'lerle toplum simülasyonu</h2>
<p>AI agent'larla toplum kurma merakım: <a href="https://github.com/tunapro1234/hallucinating-splines">hallucinating-splines</a>'ta
agent'lar headless SimCity'de şehir kuruyor; <a href="https://github.com/tunapro1234/edsl-test">EDSL</a> ile
AI destekli anket/deney tasarımını kurcalıyorum. Not defteri:
<a href="https://github.com/tunapro1234/awesome-llm-social-simulation">awesome-llm-social-simulation</a>.</p>
<div class="roots"><a href="https://github.com/tunapro1234/awesome-llm-social-simulation">github/awesome-llm-social-simulation</a></div>
</article>
<article class="note" id="frc">
<div class="stage"><span class="s">🌳 çınar</span><span>kökler burada</span></div>
<h2>FRC 7839 &amp; 9029 → NFR Products</h2>
<p>Robotikle FRC sahasında tanıştım (7839 ve 9029). O sahadan bir dönem donanım işine de
girdik; benim payıma düşen kökler bugün <a class="wiki" href="#probot">Probot Studio</a>'da —
yarış robotlarından yarışma kitlerine.</p>
<div class="roots"><a href="https://github.com/team-nf">github/team-nf</a></div>
</article>
<article class="note" id="elevator">
<div class="stage"><span class="s">🌱 fide</span><span>Rust · 1★</span></div>
<h2><a href="https://github.com/tunapro1234/elevator_optimization">elevator_optimization</a></h2>
<p>Asansör çizelgelemesi ne kadar optimize edilebilir? Rust'la yazılmış küçük bir saplantı.
Beklerken düşünülen her şey proje olabilir.</p>
<div class="roots"><a href="https://github.com/tunapro1234/elevator_optimization">github/elevator_optimization</a></div>
</article>
<article class="note curio" id="canbitirici">
<div class="stage"><span class="s">🍄 mantar</span><span>hakemli değil, kesin doğru</span></div>
<h2><a href="https://canbitirici.tunapro.xyz">Can neden iş bitirici değil?</a></h2>
<p>Bahçenin gölgesinde kendiliğinden biten tür: titiz metodolojiyle hazırlanmış(!) bir
araştırma raporu. Bilim böyle bir şey olmalı — kişisel, kindar ve grafikli.</p>
<div class="roots"><a href="https://canbitirici.tunapro.xyz">canbitirici.tunapro.xyz</a></div>
</article>
</div>
<section class="about" id="hakkinda">
<div>
<h3>Bahçıvan</h3>
<p>Ben <strong>Tuna Gül</strong> — Türkiye'de mühendislik öğrencisi; robotik, AI agent'lar ve
sistem mimarisiyle uğraşıyorum. İnancım basit: bir sistem <em>kurulabiliyorsa</em>, kurulacak.
O yüzden izlemek yerine kurmayı seçiyorum.</p>
<p>Bu bahçedeki notlar bitmiş metinler değil; yarım fikirler, çalışan prototipler, birkaç şaka.
Hepsi kendi toprağımda (kendi sunucularımda) duruyor. Bir not sana yarım geldiyse, doğru
gelmiştir — geri gel, büyümüş olur.</p>
</div>
<div>
<h3>Patikalar</h3>
<ul class="paths">
<li><a href="https://github.com/tunapro1234">GitHub</a><span class="where">@tunapro1234</span></li>
<li><a href="https://git.tunapro.xyz">Kendi Gitea'm</a><span class="where">git.tunapro.xyz</span></li>
<li><a href="https://probotstudio.com">Probot Studio</a><span class="where">probotstudio.com</span></li>
<li><a href="https://stackoverflow.com/users/tunapro1234">Neredeyse her yerde</a><span class="where">@tunapro1234</span></li>
</ul>
</div>
</section>
</main>
<footer>
<span>© 2026 Tuna Gül · bahçe kendi sunucusunda büyür</span>
<span class="gate">yıllıktaki QR'dan mı geldin? <a href="/yillik/">senin için ayrı bir köşe var →</a></span>
</footer>
</div>
</body>
</html>