Skip to main content
Development Studio Showcase

Portfolio
Projects.

Four flagship projects demonstrating full-stack expertise, AI integration, and production-grade engineering.

Free & Open Source

Linkraft

Plan. Check. Fix. Ship.

A Claude Code plugin that scans your project, scores your codebase, and hunts bugs while you sleep.

The Problem

We run three products out of a Dublin studio. All in active development. All need QA. Manual testing doesn't scale when you're a solo dev shipping three products simultaneously.

So we built an autonomous QA system that reads your entire codebase, generates its own test plan, hunts bugs, fixes what's safe, and documents the whole operation.

Then we tested it. 3 products. Overnight.

70

Bugs found

59

Auto-fixed

0

Tests broken

The tool that found them is now open source.

Four Modes

/linkraft planBefore you build

Scans your entire codebase and generates 12 research documents: competitors, architecture review, tech stack, database schema, API map, design tokens, risk matrix, dependency graph, executive summary, monetization model, and App Store keywords. Synthesizes all findings into a prioritized hardening plan: what blocks launch, what improves quality, what's polish. Then generates a CLAUDE.md from everything it discovered. Every future Claude session starts knowing your stack, your gaps, and what to work on next.

/linkraft preflightBefore you ship

60-second read-only scan. Three scores:

Security (0–10)

Secrets, auth gaps, rate limiting, fail-open patterns

Health (0–100)

Dead code, test coverage, complexity, dependencies

Ship Readiness (0–100%)

Error handling, loading states, deploy config

/linkraft sheepAfter you build

SheepCalledShip: an autonomous QA agent that reads your codebase, generates its own test plan, fixes what's safe, reverts if build breaks, commits clean code, and writes a narrative field report with two personas:

deezeebalz99

Code reviewer. Reddit mod. Suggests rewriting in Rust.

Martha

Beta tester. Elderly. Tests with one finger. Finds real UX bugs.

Zero config. Reads your package.json, detects the stack, starts hunting.

/linkraft dreamrollWhile you sleep

Autonomous landing page generator. Rolls a random Style Genome across 14 dimensions (millions of combinations), generates a standalone HTML page, scores it with three AI judges (BRUTUS, VENUS, MERCURY), saves it, starts the next. Doesn't stop until you stop it.

Wake up to 15–30 standalone HTML files. Open in any browser. Pick your favorites.

The Chain

/linkraft planunderstand the project
/linkraft preflightsee what’s wrong (60 sec)
/linkraft sheepfix what’s wrong (autonomous)
/linkraft dreamrollgenerate designs (overnight)

Each mode feeds the next. Plan generates the CLAUDE.md that Sheep reads. Preflight's report tells Sheep which areas to prioritize. The overnight run produces both engineering value and marketing material.

Dreamroll

/linkraft dreamrollWhile you sleep

Autonomous landing page generator. Rolls a random Style Genome (14 dimensions, millions of combinations), generates a standalone HTML page, scores it with three AI judges, saves it, starts the next. Doesn't stop until you stop it.

14 Dimensions

Style archetype (30 styles from glassmorphism to cyberpunk to bauhaus), color harmony (12 schemes, algorithmically generated), typography (25 Google Font pairings).

Type scale, layout, density, mood, era, animation, imagery, border radius, shadow system, CTA style, and one Oblique Strategy constraint that forces creative deviation.

Style Mutations

Mashup two styles. Invert the rules. Push to maximum. Strip to minimum. Franken three archetypes together. The system invents aesthetics that don't have names yet.

Three Judges
BRUTUS
Clarity

“Can I understand this in 3 seconds?”

VENUS
Aesthetics

“Is this genuinely beautiful?”

MERCURY
Conversion

“Would I click that CTA?”

Average ≥ 7 = gem. Gems evolve. Weak designs get deprioritized.

You wake up to 15–30 standalone HTML files. Open in any browser. Pick your favorites.

Proven Results

First test: 3 products, overnight.

ClientMoodscapeMahFahTOTAL
Bugs Found18242870
Auto-Fixed15202459
Logged37414
Files18172257
Tests Before754035789
Tests After754035789

Install

Step 1: Add the marketplace
/plugin marketplace add akellaluvlace/Linkraft
Step 2: Install
/plugin install linkraft
Step 3: Use it
/linkraft planunderstand the project
/linkraft preflight60-second health check
/linkraft sheepautonomous bug hunting
/linkraft dreamrollovernight design generation
Requirements
Claude Code (terminal or VS Code)
Claude Pro, Max, Team, or Enterprise
Node.js 18+

That's it. No API keys. No config files. No MCPs required.

Worst Bugs Found

String.fromCharCode(...new Uint8Array(imageBuffer))

A 1MB photo creates 1 million function arguments. Max call stack: 65,536. The feature never worked in production. Nobody noticed.

n.read ? 'bg-surface' : 'bg-surface'

A ternary that evaluates to the same string in both branches. Read and unread notifications were visually identical.

“Five routes without rate limits. The tier-limits system exists but is called by nothing. A cost control mechanism that controls no costs.”

Three moderation gates configured to fail open. When the API was unreachable, all content was approved. In a social app for 18+.

Open Source

411

tests

29

files

MIT

licensed

4

modes

31

MCP tools

0

friction

Built by Akella inMotion

Dublin, Ireland

Plan. Check. Fix. Ship.