d83fdb137c
build.js + templates copied from docs, 11 posts built to 14 HTML files. Generated by local Pi orchestrator task. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
177 lines
8.8 KiB
HTML
177 lines
8.8 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
|
|
<title>Blog — Tinqs Studio</title>
|
|
<meta name="description" content="Dev logs, behind-the-scenes, and lessons learned from building games, tools, and platform infrastructure at Tinqs Studio.">
|
|
<meta name="robots" content="index, follow">
|
|
<link rel="canonical" href="https://www.tinqs.com/blog/">
|
|
|
|
<meta property="og:type" content="website">
|
|
<meta property="og:url" content="https://www.tinqs.com/blog/">
|
|
<meta property="og:title" content="Blog — Tinqs Studio">
|
|
<meta property="og:description" content="Dev logs, behind-the-scenes, and lessons learned from building games, tools, and platform at Tinqs Studio.">
|
|
<meta property="og:image" content="https://www.tinqs.com/img/og-cover.jpg">
|
|
|
|
<link rel="icon" type="image/svg+xml" href="/img/favicon.svg">
|
|
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
<link href="https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&display=swap" rel="stylesheet">
|
|
<link rel="stylesheet" href="../style.css">
|
|
</head>
|
|
<body>
|
|
|
|
<!-- NAV -->
|
|
<nav class="nav nav--scrolled" id="nav">
|
|
<a href="/" class="nav__logo" aria-label="Tinqs home">
|
|
<span class="nav__wordmark">TINQS</span>
|
|
</a>
|
|
<div class="nav__links">
|
|
<a href="/#game" class="nav__link">Games</a>
|
|
<a href="/#tech" class="nav__link">Technology</a>
|
|
<a href="/#about" class="nav__link">About</a>
|
|
<a href="/blog/" class="nav__link" style="color: var(--c-accent-l);">Blog</a>
|
|
<a href="/#signup" class="nav__link">Contact</a>
|
|
<a href="/press" class="nav__link">Press</a>
|
|
</div>
|
|
<button class="nav__burger" aria-label="Open menu" id="navBurger">
|
|
<span></span><span></span><span></span>
|
|
</button>
|
|
</nav>
|
|
|
|
<!-- MOBILE MENU -->
|
|
<div class="mobile-menu" id="mobileMenu">
|
|
<a href="/#game" class="mobile-menu__link">Games</a>
|
|
<a href="/#tech" class="mobile-menu__link">Technology</a>
|
|
<a href="/#about" class="mobile-menu__link">About</a>
|
|
<a href="/blog/" class="mobile-menu__link">Blog</a>
|
|
<a href="/#signup" class="mobile-menu__link">Contact</a>
|
|
<a href="/press" class="mobile-menu__link">Press</a>
|
|
</div>
|
|
|
|
<!-- BLOG HEADER -->
|
|
<div class="blog-header">
|
|
<span class="section-label">Dev Log</span>
|
|
<h1 class="blog-header__title">From the Workshop</h1>
|
|
<p class="blog-header__subtitle">Behind-the-scenes notes on building games, forging tools, and running a small studio that punches above its weight.</p>
|
|
</div>
|
|
|
|
<!-- BLOG LIST -->
|
|
<div class="blog-list">
|
|
|
|
<a href="cloud-harness" class="blog-card">
|
|
<span class="blog-card__date">26 May 2026</span>
|
|
<h2 class="blog-card__title">Building a Cloud Agent Harness with DeepSeek V4 and Pi</h2>
|
|
<p class="blog-card__excerpt">We forked Pi, merged a browser dashboard into the monorepo, and built a Go orchestrator inside our Gitea fork. Agents code overnight for about $0.80 — and you can watch them from the browser.</p>
|
|
<span class="blog-card__read">Read →</span>
|
|
</a>
|
|
|
|
<a href="agent-harness" class="blog-card">
|
|
<span class="blog-card__date">25 May 2026</span>
|
|
<h2 class="blog-card__title">Tinqs Studio Is an Agent Harness for Game Dev</h2>
|
|
<p class="blog-card__excerpt">An agent harness gives AI agents identity, memory, tools, and guardrails. Tinqs Studio is one built for game development.</p>
|
|
<span class="blog-card__read">Read →</span>
|
|
</a>
|
|
|
|
<a href="fal-image-generation" class="blog-card">
|
|
<span class="blog-card__date">25 May 2026</span>
|
|
<h2 class="blog-card__title">AI Art at Scale: Using fal.ai Flux for Game Asset Generation</h2>
|
|
<p class="blog-card__excerpt">We generate concept art, trailer frames, and UI icons with fal.ai Flux models at $0.01 per image. Here's the prompt engineering pattern that makes it work for game dev.</p>
|
|
<span class="blog-card__read">Read →</span>
|
|
</a>
|
|
|
|
<a href="fork-dont-build" class="blog-card">
|
|
<span class="blog-card__date">25 May 2026</span>
|
|
<h2 class="blog-card__title">Fork, Don't Build: The Age of Agents Doesn't Need New Tools</h2>
|
|
<p class="blog-card__excerpt">Everyone is building new AI developer tools. We forked three existing ones and modified them from the inside. Here's why that's the better bet.</p>
|
|
<span class="blog-card__read">Read →</span>
|
|
</a>
|
|
|
|
<a href="image-generation-fal" class="blog-card">
|
|
<span class="blog-card__date">25 May 2026</span>
|
|
<h2 class="blog-card__title">Image Generation at Every Price Point with fal.ai</h2>
|
|
<p class="blog-card__excerpt">We generate concept art, logos, icons, and trailer frames through a single API proxy. Here's how we pick between 12 models spanning $0.002 to $0.09 per image.</p>
|
|
<span class="blog-card__read">Read →</span>
|
|
</a>
|
|
|
|
<a href="pi-ci-integrator" class="blog-card">
|
|
<span class="blog-card__date">25 May 2026</span>
|
|
<h2 class="blog-card__title">Pi as CI Integrator: Agents That Fix Their Own Builds</h2>
|
|
<p class="blog-card__excerpt">Most coding agents stop at git push. Our Pi fork watches CI, reads failure logs, and fixes its own code until the pipeline goes green.</p>
|
|
<span class="blog-card__read">Read →</span>
|
|
</a>
|
|
|
|
<a href="pre-commit-agent" class="blog-card">
|
|
<span class="blog-card__date">25 May 2026</span>
|
|
<h2 class="blog-card__title">A Pre-Commit Agent That Guards Your Secrets for $0.001</h2>
|
|
<p class="blog-card__excerpt">We built a pre-commit hook that calls DeepSeek V4 Flash to review every commit. It catches leaked secrets, classified terms, and broken URLs --- for a tenth of a cent.</p>
|
|
<span class="blog-card__read">Read →</span>
|
|
</a>
|
|
|
|
<a href="godot-optimisation" class="blog-card">
|
|
<span class="blog-card__date">22 May 2026</span>
|
|
<h2 class="blog-card__title">Streaming a 12km Archipelago in Godot 4</h2>
|
|
<p class="blog-card__excerpt">Four streaming layers, async resource loading, memory-safe caches, and zero leaks. How we built a 12km open world in Godot 4 with C#.</p>
|
|
<span class="blog-card__read">Read →</span>
|
|
</a>
|
|
|
|
<a href="forking-gitea" class="blog-card">
|
|
<span class="blog-card__date">20 May 2026</span>
|
|
<h2 class="blog-card__title">Why We Forked Gitea and Built Tinqs Studio</h2>
|
|
<p class="blog-card__excerpt">GitHub doesn't understand game dev. We forked Gitea to build Tinqs Studio --- with 3D asset preview, LFS-first workflows, and project management for game teams.</p>
|
|
<span class="blog-card__read">Read →</span>
|
|
</a>
|
|
|
|
<a href="studio-cli" class="blog-card">
|
|
<span class="blog-card__date">18 May 2026</span>
|
|
<h2 class="blog-card__title">One Binary to Rule Them All: Building a Studio CLI</h2>
|
|
<p class="blog-card__excerpt">A single Go binary that gives AI agents context about who you are, what machine you're on, and what services are reachable. Screenshots, cloud vision, health checks --- one install, every machine.</p>
|
|
<span class="blog-card__read">Read →</span>
|
|
</a>
|
|
|
|
<a href="agentic-workflow" class="blog-card">
|
|
<span class="blog-card__date">6 March 2026</span>
|
|
<h2 class="blog-card__title">How a Small Game Studio Runs on AI Agents</h2>
|
|
<p class="blog-card__excerpt">Soul files, skill playbooks, and markdown as the universal API. How we built an agentic workflow that lets a 4-person indie studio operate at 10x scale.</p>
|
|
<span class="blog-card__read">Read →</span>
|
|
</a>
|
|
</div>
|
|
|
|
<!-- FOOTER -->
|
|
<footer class="footer">
|
|
<div class="footer__inner">
|
|
<span class="footer__wordmark">TINQS</span>
|
|
<div class="footer__links">
|
|
<a href="/#game">Games</a>
|
|
<a href="/#tech">Technology</a>
|
|
<a href="/#about">About</a>
|
|
<a href="/blog/">Blog</a>
|
|
<a href="mailto:hello@tinqs.com">hello@tinqs.com</a>
|
|
<a href="/press">Press Kit</a>
|
|
</div>
|
|
<p class="footer__copy">Tinqs Limited — London, est. 2020</p>
|
|
</div>
|
|
</footer>
|
|
|
|
<script>
|
|
const burger = document.getElementById('navBurger');
|
|
const mobileMenu = document.getElementById('mobileMenu');
|
|
burger.addEventListener('click', () => {
|
|
const open = mobileMenu.classList.toggle('mobile-menu--open');
|
|
burger.classList.toggle('nav__burger--open', open);
|
|
document.body.style.overflow = open ? 'hidden' : '';
|
|
});
|
|
mobileMenu.querySelectorAll('a').forEach(link => {
|
|
link.addEventListener('click', () => {
|
|
mobileMenu.classList.remove('mobile-menu--open');
|
|
burger.classList.remove('nav__burger--open');
|
|
document.body.style.overflow = '';
|
|
});
|
|
});
|
|
</script>
|
|
|
|
</body>
|
|
</html>
|