Skip to main content

NDI Architech

01 The Meta Problem

Every project in this portfolio was built by NDI Architech. It started as a question: what if an AI could not just write code, but architect entire systems? This tool doesn't just generate files - it thinks about structure, dependencies, and long-term maintainability.

core/orchestrator.ts
// The orchestrator that builds everything
interface ArchitechConfig {
  projectName: string;
  vision: string;
  constraints: string[];
  targetStack: TechStack;
}

async function orchestrate(config: ArchitechConfig): Promise<Project> {
  const prd = await generatePRD(config.vision);
  const architecture = await designArchitecture(prd);
  const tasks = await decomposeTasks(architecture);
  return await executeWithValidation(tasks);
}

02 Document-Driven Development

NDI Architech generates comprehensive documentation before writing a single line of code. PRD, ARD, TRD, and TASKS.md files create a blueprint that ensures consistency and architectural integrity across the entire codebase.

generators/documents.ts
// Generate architecture documents
const documents = await generateDocuments({
  type: 'full-stack',
  patterns: ['islands', 'content-collections'],

  generate: {
    PRD: true,    // Product Requirements
    ARD: true,    // Architecture Requirements
    TRD: true,    // Technical Requirements
    TASKS: true,  // Implementation Tasks
    AGENT: true,  // AI Agent Guidelines
  }
});

// Validate consistency across all docs
await validateDocumentConsistency(documents);

03 Intelligent Task Execution

Tasks are decomposed into atomic units with clear dependencies. The orchestrator executes them in optimal order, validating each step against the architecture documents to prevent drift.

execution/task-executor.ts
// Task execution with validation
class TaskExecutor {
  async execute(task: Task): Promise<Result> {
    // Validate against architecture docs
    await this.validateAgainstARD(task);

    // Generate code with context
    const code = await this.generateCode(task, {
      existingFiles: await this.scanProject(),
      patterns: await this.extractPatterns(),
      constraints: task.constraints,
    });

    // Verify before commit
    await this.runTests(code);
    await this.checkTypes(code);

    return this.commit(code, task);
  }
}

04 The Recursive Beauty

NDI Architech built this portfolio you're viewing right now. It generated the PRD, designed the split-screen architecture, created every component, and even wrote these words. The tool that builds tools, recursively improving itself.

examples/this-portfolio.ts
// This portfolio was generated by running:
await architech.create({
  name: 'THE_ARCHITECT_LOG',
  vision: `A portfolio that demonstrates the craft of building
           software by showing code transforming into visual
           products in real-time`,
  stack: {
    framework: 'astro@5',
    islands: 'svelte@5',
    styling: 'tailwindcss@4',
  },
  features: [
    'split-screen-narrative',
    'scroll-synced-animations',
    'terminal-aesthetic',
    'syntax-highlighted-typing',
  ],
});

// And it just... worked.
ndi_architech