Kasap ve Mandıra, Aktepe Keçiören | YET Kasap & Mandıra
YET Kasap için örnek önizleme, yayında değil. 23.11.2026 tarihine kadar açık.
ÖNİZLEME
Kasap
Taze et, güler yüzlü tezgâh.
Mandıra
Peynir, kaşar, tereyağı, yoğurt.
Y-ET
Aktepe'de bir tezgâh, iki yarım. Kasap ve mandıra aynı kapıda.
Et tarafı
“Etleri gerçekten çok kaliteli ve taze. Ürünlerin lezzeti, temizliği ve hizmet kalitesi oldukça başarılı.”
İbrahim Ö., Google Haritalar
Bugün hangi parça var, kaç kilo kalmış: tezgâhı arayın ya da WhatsApp'tan yazın.
Mandıra tarafı
- Beyaz peynir
- Kaşar
- Tereyağı
- Yoğurt
Ürünler mevsime göre değişir, WhatsApp'tan sorun.
“10 yıldır alışveriş yaparım, hiç bir ürününde sorun sıkıntı yaşamadık.”
Oğuz Eren K., Google Haritalar. Aynı yorumun ilk cümlesi: “Esnaf kelimesinin tam manasıyla karşılığı Y-Et.”
“Mahallenin kıymeti böyle esnaflarla belli oluyor! Güler yüz, dürüst esnaflık, taze ve kaliteli ürünler.”
Murat A.
“Tam bir mahalle esnafı, uzun süredir alışveriş yaparız.”
Serdar E.
4,9Google Haritalar'da 107 yorumun ortalaması
Haftanın her günü açık
- Saat
- 08.00–21.00
- Adres
- Aktepe, 949. Cd. 4/A
06300 Keçiören / Ankara
WhatsApp
öncesine HAREKET işareti koy, "node inline.js sayfa.html" çalıştır.
* DİKKAT: bu dosyaya kapanan script etiketi yazma; satır içine gömülünce sayfayı bozar.
* HTML'de data-h="" yazmak yeter. Bloklar ve ayarlar README.md'de.
* İlkeler: Motion yüklenmezse ya da kullanıcı "hareketi azalt" seçtiyse hiçbir şey gizlenmez,
* sayfa statik ve eksiksiz kalır. Yalnız transform/opacity canlandırılır (telefonda akıcı).
*/
(function () {
var M = window.Motion;
if (!M) return;
if (window.matchMedia && window.matchMedia("(prefers-reduced-motion: reduce)").matches) return;
var animate = M.animate, inView = M.inView, scroll = M.scroll, stagger = M.stagger;
var hover = window.matchMedia && window.matchMedia("(hover: hover) and (pointer: fine)").matches;
var vh = window.innerHeight || 800;
function all(sel, root) { return Array.prototype.slice.call((root || document).querySelectorAll(sel)); }
function num(el, name, def) { var v = parseFloat(el.getAttribute("data-" + name)); return isNaN(v) ? def : v; }
function spring(extra) { var o = { type: "spring", bounce: 0.25, duration: 0.7 }; for (var k in extra) o[k] = extra[k]; return o; }
/* belir: ekrana girince aşağıdan yukarı belirir. data-gecikme="0.2" */
all('[data-h="belir"]').forEach(function (el) {
el.style.opacity = "0";
inView(el, function () {
animate(el, { opacity: [0, 1], y: [24, 0] }, { duration: 0.6, ease: [0.22, 1, 0.36, 1], delay: num(el, "gecikme", 0) });
}, { amount: 0.25 });
});
/* dalga: kabın çocukları sırayla gelir. data-aralik="0.08" */
all('[data-h="dalga"]').forEach(function (box) {
var kids = Array.prototype.slice.call(box.children);
kids.forEach(function (k) { k.style.opacity = "0"; });
inView(box, function () {
animate(kids, { opacity: [0, 1], y: [20, 0] }, { duration: 0.55, ease: [0.22, 1, 0.36, 1], delay: stagger(num(box, "aralik", 0.08)) });
}, { amount: 0.2 });
});
/* sayac: metindeki sayıyı 0'dan sayar. "1.250+" gibi ek ve önekler korunur. data-sure="1.6" */
all('[data-h="sayac"]').forEach(function (el) {
var txt = el.textContent, m = txt.match(/[\d.,]+/);
if (!m) return;
var raw = m[0], hasComma = raw.indexOf(",") > -1;
var to = parseFloat(raw.replace(/\./g, "").replace(",", "."));
var dec = hasComma ? (raw.split(",")[1] || "").length : 0;
var pre = txt.slice(0, m.index), post = txt.slice(m.index + raw.length);
var fmt = function (v) { return pre + v.toLocaleString("tr-TR", { minimumFractionDigits: dec, maximumFractionDigits: dec }) + post; };
inView(el, function () {
animate(0, to, { duration: num(el, "sure", 1.6), ease: "easeOut", onUpdate: function (v) { el.textContent = fmt(dec ? v : Math.round(v)); } });
}, { amount: 0.6 });
});
/* ciz: SVG içindeki path/line/circle kalemle çiziliyormuş gibi. data-sure="1.2" */
all('[data-h="ciz"]').forEach(function (svg) {
var shapes = all("path, line, polyline, circle, ellipse, rect", svg).filter(function (s) {
return s.getAttribute("stroke") || getComputedStyle(s).stroke !== "none";
});
shapes.forEach(function (s) { s.setAttribute("pathLength", "1"); s.style.strokeDasharray = "1"; s.style.strokeDashoffset = "1"; });
inView(svg, function () {
// Not: tarayıcı animasyonu bitince satır içi değere döner; son hali elle yazılır
animate(shapes, { strokeDashoffset: [1, 0] }, { duration: num(svg, "sure", 1.2), ease: "easeInOut", delay: stagger(0.12) })
.then(function () { shapes.forEach(function (s) { s.style.strokeDashoffset = "0"; }); });
}, { amount: 0.4 });
});
/* baslik: harfler yayla yerine oturur (ekran okuyucu tam metni okur) */
all('[data-h="baslik"]').forEach(function (el) {
if (!el.getAttribute("aria-label")) el.setAttribute("aria-label", el.textContent.trim());
var chars = [];
(function split(node) {
Array.prototype.slice.call(node.childNodes).forEach(function (n) {
if (n.nodeType === 3) {
var frag = document.createDocumentFragment(), t = n.textContent;
var harf = function (c, kutu, stil) {
var s = document.createElement("span"); s.style.display = "inline-block"; s.textContent = c;
if (stil) { s.style.color = stil.color; s.style.fontStyle = stil.fontStyle; s.style.fontFamily = stil.fontFamily; s.style.fontWeight = stil.fontWeight; }
kutu.appendChild(s); chars.push(s);
};
// "görünen," gibi etiket sınırında virgül alt satıra düşmesin:
// baştaki noktalamayı önceki kelimenin kutusuna, kendi yazı stiliyle ekle
var prev = n.previousSibling;
if (prev && prev.nodeType === 1 && /^\S/.test(t)) {
var kutular = prev.querySelectorAll("span[data-w]"), son = kutular[kutular.length - 1];
if (son) {
var bas = t.match(/^\S+/)[0], stil = getComputedStyle(node);
Array.prototype.forEach.call(bas, function (c) { harf(c, son, stil); });
t = t.slice(bas.length);
}
}
t.split(/(\s+)/).forEach(function (w) {
if (!w) return;
if (/^\s+$/.test(w)) { frag.appendChild(document.createTextNode(" ")); return; }
var ws = document.createElement("span"); ws.style.display = "inline-block"; ws.style.whiteSpace = "nowrap"; ws.setAttribute("aria-hidden", "true"); ws.setAttribute("data-w", "");
Array.prototype.forEach.call(w, function (c) { harf(c, ws); });
frag.appendChild(ws);
});
node.replaceChild(frag, n);
} else if (n.nodeType === 1) split(n);
});
})(el);
var go = function () { animate(chars, { y: [36, 0], rotate: [6, 0], opacity: [0, 1] }, spring({ bounce: 0.35, delay: stagger(0.022) })); };
if (el.getBoundingClientRect().top < vh) go(); else inView(el, go, { amount: 0.5 });
});
/* bas: butona basınca içeri çöker, yayla geri gelir */
all('[data-h~="bas"]').forEach(function (el) {
el.addEventListener("pointerdown", function () { animate(el, { scale: 0.95 }, { duration: 0.1 }); });
var up = function () { animate(el, { scale: 1 }, spring({ bounce: 0.5, duration: 0.4 })); };
el.addEventListener("pointerup", up); el.addEventListener("pointerleave", up); el.addEventListener("pointercancel", up);
});
/* miknatis: buton imleci hafifçe takip eder (yalnız fareli cihazda) */
if (hover) all('[data-h~="miknatis"]').forEach(function (el) {
var g = num(el, "guc", 0.3);
el.addEventListener("pointermove", function (e) {
var r = el.getBoundingClientRect();
animate(el, { x: (e.clientX - r.left - r.width / 2) * g, y: (e.clientY - r.top - r.height / 2) * g }, { type: "spring", stiffness: 250, damping: 15 });
});
el.addEventListener("pointerleave", function () { animate(el, { x: 0, y: 0 }, { type: "spring", stiffness: 250, damping: 12 }); });
});
/* egil: kart imlece doğru 3B eğilir (yalnız fareli cihazda). data-aci="10" */
if (hover) all('[data-h~="egil"]').forEach(function (el) {
var a = num(el, "aci", 10);
el.parentElement.style.perspective = el.parentElement.style.perspective || "800px";
el.addEventListener("pointermove", function (e) {
var r = el.getBoundingClientRect(), px = (e.clientX - r.left) / r.width - 0.5, py = (e.clientY - r.top) / r.height - 0.5;
animate(el, { rotateY: px * a * 2, rotateX: -py * a * 2, scale: 1.03 }, { type: "spring", stiffness: 300, damping: 20 });
});
el.addEventListener("pointerleave", function () { animate(el, { rotateY: 0, rotateX: 0, scale: 1 }, { type: "spring", stiffness: 300, damping: 20 }); });
});
/* paralaks: kaydırdıkça farklı hızda kayar. data-hiz="0.3" (eksi değer ters yön) */
all('[data-h="paralaks"]').forEach(function (el) {
var d = num(el, "hiz", 0.3) * 200;
scroll(animate(el, { y: [-d, d] }, { ease: "linear" }), { target: el, offset: ["start end", "end start"] });
});
/* ilerleme: sayfa okuma çubuğu (öğe sabit konumlu, tam genişlik olmalı) */
all('[data-h="ilerleme"]').forEach(function (el) {
el.style.transformOrigin = "0 50%";
scroll(animate(el, { scaleX: [0, 1] }, { ease: "linear" }));
});
/* ---------- Ek kütüphaneler: yalnız sayfada ilgili blok varsa yüklenir (2026-11-04) ---------- */
var CDN = "https://cdn.jsdelivr.net/npm/";
var yuklu = {};
function yukle(src) {
if (yuklu[src]) return yuklu[src];
return (yuklu[src] = new Promise(function (res, rej) {
var s = document.createElement("script"); s.src = CDN + src; s.onload = res; s.onerror = rej; document.head.appendChild(s);
}));
}
function stil(css) { var s = document.createElement("style"); s.textContent = css; document.head.appendChild(s); }
/* akici: tüm sayfada yumuşak, ağırlıklı kaydırma (Lenis). yazmak yeter. Dokunmatikte doğal kaydırma kalır. */
var lenisHazir = Promise.resolve(null);
if (document.querySelector("[data-h-akici]")) {
stil("html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-stopped{overflow:hidden}");
lenisHazir = yukle("lenis@1.1.13/dist/lenis.min.js").then(function () {
var l = new window.Lenis({ lerp: 0.1, wheelMultiplier: 1 });
(function raf(t) { l.raf(t); requestAnimationFrame(raf); })(performance.now());
// sayfa içi bağlantılar da yumuşak kaysın
all('a[href^="#"]').forEach(function (a) {
a.addEventListener("click", function (e) { var h = a.getAttribute("href"); if (h.length > 1 && document.querySelector(h)) { e.preventDefault(); l.scrollTo(h, { offset: -60 }); } });
});
window.hareketLenis = l;
return l;
}).catch(function () { return null; });
}
/* gecis: sayfalar arası yumuşak geçiş (View Transitions, kütüphanesiz). .
Sayfa içi değişiklik için: window.hareketGecis(function(){ ...DOM'u değiştir... }) */
if (document.documentElement.hasAttribute("data-h-gecis")) {
stil("@view-transition{navigation:auto}::view-transition-old(root){animation:.28s ease both h-cik}::view-transition-new(root){animation:.38s cubic-bezier(.22,1,.36,1) both h-gir}" +
"@keyframes h-cik{to{opacity:0;transform:translateY(-12px)}}@keyframes h-gir{from{opacity:0;transform:translateY(16px)}}");
}
window.hareketGecis = function (fn) { return document.startViewTransition ? document.startViewTransition(fn) : (fn(), null); };
/* lottie: tasarımcı animasyonu (JSON). data-src="anim.json" data-dongu="1" — ekrana girince oynar */
var lotties = all('[data-h="lottie"]');
if (lotties.length) yukle("lottie-web@5.12.2/build/player/lottie_light.min.js").then(function () {
lotties.forEach(function (el) {
var a = window.lottie.loadAnimation({ container: el, renderer: "svg", loop: el.getAttribute("data-dongu") === "1", autoplay: false, path: el.getAttribute("data-src") });
inView(el, function () { a.play(); return function () { a.pause(); }; }, { amount: 0.3 });
});
}).catch(function () {});
/* donen: dönen slogan, bir metin ötekine harf harf dönüşür (Torph 0.1.3, MIT; 2026-11-08).
Kahve
Yalnız ekrandayken döner; yüklenemezse ya da az hareket tercihinde ilk metin sabit kalır. */
var donenler = all('[data-h="donen"]');
if (donenler.length && !matchMedia("(prefers-reduced-motion: reduce)").matches) import(CDN + "torph@0.1.3/+esm").then(function (m) {
donenler.forEach(function (el) {
var liste = (el.getAttribute("data-metinler") || "").split("|").map(function (s) { return s.trim(); }).filter(Boolean);
if (liste.length < 2) return;
var i = Math.max(0, liste.indexOf(el.textContent.trim())), zaman = null;
el.setAttribute("aria-live", "off");
var morph = new m.TextMorph({ element: el, duration: 700, ease: "cubic-bezier(0.19, 1, 0.22, 1)", locale: "tr" });
morph.update(liste[i]);
inView(el, function () {
zaman = setInterval(function () { i = (i + 1) % liste.length; morph.update(liste[i]); }, num(el, "aralik", 2.4) * 1000);
return function () { clearInterval(zaman); };
});
});
}).catch(function () {});
/* hikaye: kaydırarak anlatılan sahneler (GSAP ScrollTrigger). Kap sabitlenir, içindeki [data-sahne] öğeleri sırayla değişir.
JS yoksa sahneler alt alta normal içerik olarak görünür. data-uzunluk="100" = sahne başına ekran yüzdesi */
var hikayeler = all('[data-h="hikaye"]');
if (hikayeler.length) {
stil(".h-hikaye{position:relative;height:100vh;height:100svh;overflow:hidden}.h-hikaye>[data-sahne]{position:absolute;inset:0}");
Promise.all([yukle("gsap@3.12.5/dist/gsap.min.js"), lenisHazir]).then(function (r) {
return yukle("gsap@3.12.5/dist/ScrollTrigger.min.js").then(function () { return r[1]; });
}).then(function (lenis) {
var gsap = window.gsap, ST = window.ScrollTrigger;
gsap.registerPlugin(ST);
if (lenis) lenis.on("scroll", ST.update);
hikayeler.forEach(function (box) {
var sahneler = Array.prototype.slice.call(box.querySelectorAll(":scope > [data-sahne]"));
if (sahneler.length < 2) return;
box.classList.add("h-hikaye");
gsap.set(sahneler.slice(1), { autoAlpha: 0, y: 60 });
var tl = gsap.timeline({ scrollTrigger: { trigger: box, start: "top top", end: "+=" + (sahneler.length - 1) * num(box, "uzunluk", 100) + "%", pin: true, scrub: 0.6 } });
sahneler.forEach(function (s, i) {
if (!i) return;
tl.to(sahneler[i - 1], { autoAlpha: 0, y: -60, duration: 1 }).to(s, { autoAlpha: 1, y: 0, duration: 1 }, "<0.3");
// sahne içindeki [data-katman] öğeleri farklı hızda gelir (derinlik hissi)
s.querySelectorAll("[data-katman]").forEach(function (k) {
tl.from(k, { y: 120 * parseFloat(k.getAttribute("data-katman") || 1), duration: 1 }, "<");
});
});
});
ST.refresh();
}).catch(function () {});
}
/* Güvenlik ağı: herhangi bir nedenle gizli kalan öğe 4 sn sonra görünür olur */
setTimeout(function () {
all('[data-h="belir"], [data-h="dalga"] > *, [data-h="baslik"] span').forEach(function (el) {
if (el.style.opacity === "0" && el.getBoundingClientRect().top < vh && el.getBoundingClientRect().bottom > 0) el.style.opacity = "";
});
}, 4000);
})();