Back

Platform Overview

PixelFrame is a design-to-dev orchestration platform that connects your design, planning, code, and communication tools into one workflow. AI proposes, you approve — every action is on-demand, editable, and requires your explicit approval before anything is saved or created.

Connected Tools

PixelFrame integrates with five key tools in the design-to-development workflow:

Figma

Sync designs via plugin, detect property-level changes, version control with baseline snapshots and commit history

Jira, Linear, GitHub Issues

OAuth integration for ticket export, automatic PR linking, plus Markdown export for documentation

GitHub

App installation for repository indexing, AI-powered code generation, automated PR creation

Slack

Real-time notifications for design commits, spec creation, PR success/failure, and project imports

Note: You can connect tools incrementally. Start with Figma for version control, then add Jira/Linear, GitHub, and Slack as needed.

Orchestration Flow

When all tools are connected, the platform coordinates your workflow — but you control each step:

1 Design Change in Figma

A designer updates a button color, modifies spacing, or adds a new screen in Figma.

2 Change Detection

PixelFrame detects added, modified, and removed screens. For modified screens: property-level diffs (e.g., backgroundColor: #0066CC → #7C3AED). For new screens: full component detection. You review and choose which to commit.

3 Spec Generation (Preview)

AI generates a preview spec — no database writes. You review and edit the title, story, and criteria. Click "Save to Specs" only when satisfied.

4 Ticket Export (On-Demand)

You click "Export" to send the spec to Jira or Linear. The ticket includes screenshots, deep links, and all acceptance criteria. Specs can be re-exported after editing.

5 Pull Request (On-Demand)

You click "Generate PR" to trigger code generation. For added screens: Claude scaffolds entire new components and routes. For modified screens: targeted changes. You review in GitHub, add business logic, then merge.

6 Team Notification

Slack receives a notification for actions you've triggered. You configure which events go to which channels.

Key principle: AI proposes, you approve. Specs are preview-first and editable. Commits are user-curated. PRs are on-demand. Nothing happens without your explicit action.

Figma Connection

Connect Figma to enable design sync, version control, and property-level change detection.

Figma Plugin

1 Install the Plugin

Open Figma Desktop and go to Plugins → Browse plugins in Community. Search for "PixelFrame" and click Install.

2 Run the Plugin

Open any Figma file, then go to Plugins → PixelFrame. The plugin panel will open on the right side of your screen.

3 Sign In and Sync

Click Sign in with PixelFrame to connect your account. Then click Import to PixelFrame to sync your screens.

Tip: The plugin uses a two-phase async flow (analyze → commit) for large files. Screens appear immediately with "Analyzing..." badges during processing.

Version Control

PixelFrame provides Git-like version control for Figma designs. Commits are user-curated — you review and approve before any version is created.

  • Baseline Snapshots — Property hashes track the exact state of each screen
  • User-Curated Commits — You review detected changes and choose which to include
  • Named Versions — Add descriptions to each commit (e.g., "Login redesign")
  • Rollback — Restore any previous version to see past states

Creating a Version

  1. Open your project in the Library
  2. Click "Check for Updates"
  3. Review the detected changes — Added, modified, and removed screens are shown
  4. Give your version a descriptive name
  5. Click "Create Version" — Only then is the version committed

Note: Changes are detected automatically, but nothing is versioned until you explicitly create a commit.

Change Detection

The diff engine detects three types of changes:

  • Added Screens — Entirely new screens detected with full component extraction (layers, colors, fonts)
  • Modified Screens — Property-level diffs with visual equivalence, token resolution, and causal grouping
  • Removed Screens — Screens that existed in the baseline but are no longer present

For Modified Screens

Advanced analysis features:

  • Visual Equivalence — Treats hex/rgb/hsl/rgba as identical when values match
  • Token Resolution — Maps Figma variable IDs to actual token names and values
  • Causal Grouping — Compresses 10-15 raw changes into 4-6 semantic groups
  • Significance Scoring — Prioritizes high-impact, user-visible changes
  • Visual Heatmaps — Before/after image comparison with changed regions highlighted

For Added Screens

Full component detection extracts:

  • UI layers and component hierarchy
  • Colors used in the design
  • Fonts and typography
  • Screenshot for AI-powered code generation

Specs & Tickets

PixelFrame generates specs from design changes using a "Figma-First" approach — all content is derived from actual diffs, with no generic statements. Specs are preview-only until you save them.

Figma-First Specs

The spec generation flow puts you in control:

  1. Click "Create Spec" — AI generates a preview (no database writes)
  2. Review and edit — Modify title, user story, acceptance criteria, and notes
  3. Click "Save to Specs" — Only then is the spec persisted to your backlog

Unlike generic spec generators, PixelFrame specs are derived directly from design diffs:

Adaptive Titles

Title specificity adapts to change scope:

  • 1 property change — "Update Button Background Color on Login"
  • Multiple properties — "Update Button Styling on Login"
  • Multiple elements — "Update Login Layout and Styling"
  • New screen — "Implement Dashboard"
  • Removed screen — "Remove Settings"

Specific User Stories

Stories reference actual property values:

  • Yes: "...want the Button to display Background Color of #2B5CE6 instead of #3B82F6..."
  • No: "...want the screen to match design specifications..."

Diff-Based Acceptance Criteria

One criterion per design change:

  • Yes: "Button Background Color is #2B5CE6"
  • No: "All visual changes match design specifications"
  • No: "Screen maintains existing functionality"

What Each Spec Includes

  • Title — Specific to the actual change scope
  • Context — Screen and flow information
  • User Story — References actual property values
  • Acceptance Criteria — One per design change
  • Technical Notes — Framework-specific guidance
  • Screenshots — Before and after images
  • Deep Links — Links to PixelFrame diff view and Figma

Export Destinations

Export specs to your project management tools or as documentation.

Supported Providers

  • Jira — OAuth integration, project selection, automatic PR linking
  • Linear — OAuth integration, team selection, automatic PR linking
  • GitHub Issues — Creates issues in your linked repository
  • Markdown — Export as .md file for documentation or manual workflows

Connecting Jira or Linear

  1. Go to project settings
  2. Click "Connect Jira" or "Connect Linear"
  3. Authorize the PixelFrame app
  4. Select your project/team

What Gets Exported

  • Full spec content (title, story, acceptance criteria)
  • Screenshots (before/after for modifications, current for added screens)
  • Deep links back to PixelFrame
  • Figma links to the design

Automatic PR Linking

When you generate a PR from a spec exported to Jira or Linear, the PR URL is automatically posted to the ticket. This keeps design, ticket, and code connected without manual copy-paste.

Tip: GitHub Issues export requires a linked repository. Markdown export works without any integrations.

GitHub Integration

Connect GitHub to enable AI-powered code generation and automated pull request creation.

Connecting GitHub

1 Install GitHub App

Click "Connect GitHub" in your project. You'll be redirected to install the PixelFrame GitHub App. Grant access to the repositories you want to use.

2 Link Repository

If you have one repository, it auto-links. With multiple repos, select from the dropdown. The linked repo appears in your project settings.

Note: PixelFrame uses GitHub App authentication — no personal access tokens required.

AI Code Generation

PixelFrame uses semantic search (RAG) to find relevant files in your codebase before generating code. PRs are on-demand — nothing happens until you click "Generate PR".

How It Works

  1. You click "Generate PR" — Opens the coding workflow modal
  2. Indexing — Repository files are embedded using OpenAI (up to 200 files). AST-aware chunking extracts functions and classes.
  3. Semantic Search — Spec text is embedded and matched against your codebase. Hybrid search (BM25 + semantic) with Voyage AI reranking finds the most relevant files.
  4. Code Generation — Claude sees your existing code patterns and generates minimal, targeted changes (typically 3-20 lines).
  5. Validation — File paths are validated against the repository structure. Hallucinated paths are filtered.
  6. Pull Request — A feature branch is created, code is committed, and a PR is opened.
  7. You review in GitHub — Add business logic, run tests, then merge like any other PR.

Supported Platforms

  • Android — Kotlin / Java with Jetpack Compose
  • iOS — Swift / SwiftUI
  • React — Next.js, Remix, React Router (TypeScript / JavaScript)
  • React Native — Expo Router, React Navigation
  • Flutter — Dart with GoRouter or AutoRoute
  • Vue — Vue 3 with Vue Router

What Gets Generated

For Added Screens (new screens):

  • Complete new component/screen files
  • Route/screen registration in config files
  • UI layout matching the design screenshot
  • Component structure using your existing patterns

For Modified Screens:

  • Targeted changes to existing files (typically 3-20 lines)
  • Styling updates with design tokens
  • Property changes matching the diff

What Your Team Adds

  • Business logic and state management
  • API calls and data handling
  • Form validation and error handling
  • Tests and edge cases

Tip: AI detects your stack from file patterns and matches your coding style. It only modifies files shown in the existing code context.

PR Linking

When you generate a PR from a spec that was exported to Jira or Linear:

  • The PR URL is automatically posted to the ticket
  • PixelFrame tracks the PR status
  • Design, ticket, and code remain connected

This means you can trace any PR back to its design change and ticket without manual linking.

Slack Notifications

Connect Slack to receive real-time notifications for key workflow events. Keep your team informed without manual updates.

Connecting Slack

1 Authorize the App

Go to project settings, click "Connect Slack", and authorize the PixelFrame app for your Slack workspace.

2 Select Channels

Choose which channels should receive notifications. You can route different event types to different channels.

Tip: For private channels, invite the PixelFrame bot by typing /invite @PixelFrame in the channel.

Event Types

PixelFrame sends notifications for the following events (listed by priority):

PR Created / Failed

Immediate feedback when code is generated. Includes PR link, repository, spec link, and author.

Spec Created

When a new spec is saved to the backlog. Includes spec title and link.

Version Committed

When design versions are synced from Figma. Includes counts of added, modified, and removed screens.

Project Imported

When a new project is imported from Figma.

Sample Notification

PR Created notifications include:

  • PR title and status
  • Repository name
  • Direct link to GitHub PR
  • Link to the PixelFrame spec
  • Author username

Channel Routing

Route different events to different channels:

  • PR events → #engineering
  • Design updates → #design
  • All events → #product-updates

Security & Privacy

PixelFrame is designed with privacy at its core. We separate code understanding from code storage — your source code is never stored on our servers. Here's how we protect your data.

Data Architecture

PixelFrame uses a privacy-first architecture inspired by modern AI code assistants:

Embeddings Only, Not Code

When indexing your repository, we convert code into mathematical vectors called embeddings. These enable semantic search but cannot be reversed back into source code. Only these compact numerical representations are stored — never your actual source files.

No Code at Rest

Your source code is never stored on PixelFrame servers. Embeddings enable us to find relevant files, but the actual code content is fetched directly from GitHub only when needed for generation.

On-Demand Retrieval

When you click "Generate PR", we use embeddings to identify relevant files, then fetch the latest code from GitHub at that moment. This ensures generated code uses current file contents and nothing is cached.

Repository Isolation

All data is isolated per repository at the database level. When you search, results are filtered to your repository only — there's no possibility of cross-repository data leakage.

How embeddings work: An embedding is a list of numbers (like [0.23, -0.15, 0.87, ...]) that represents the meaning of code. Two similar functions will have similar embeddings, enabling semantic search. But you cannot reverse an embedding back to code — it's a one-way transformation.

Code Privacy Measures

Multiple layers protect your code during the indexing and generation process:

Before Indexing

  • Secret Sanitization — API keys, tokens, passwords, and other sensitive patterns are automatically redacted before text is used for embedding generation. Patterns like API_KEY="sk-..." become API_KEY="***".
  • Private Key Exclusion — Files with extensions .pem, .key, .keystore, .p12, and .pfx are never indexed at all — they're completely skipped.
  • Build Artifacts Excluded — Directories like node_modules/, build/, dist/, .git/, and vendor/ are automatically excluded from indexing.
  • File Size Limits — Only source files under 100KB are indexed. Large generated files and binaries are skipped.

What We Index

We index source code files for semantic search. For each file:

  • AST-aware chunking — Code is split at semantic boundaries (functions, classes) rather than arbitrary character limits
  • Embeddings generated — Mathematical vectors created using OpenAI or Voyage AI embedding models
  • Metadata stored — File path, language, and line numbers are stored alongside embeddings

What we don't store: The actual source code content. Only the embeddings and metadata.

During Generation

  • Latest code fetched — When generating a PR, we fetch current file contents directly from GitHub
  • Used only for generation — Code is sent to the AI model (Claude) for generation, then discarded
  • File path validation — Generated file paths are validated against your repository structure to prevent hallucinations

Key point: Your code passes through our system only during active generation. We don't store it before, during, or after. The embeddings stored in our database enable us to find relevant files, but they don't contain recoverable source code.

OAuth & Integration Security

All external integrations use industry-standard OAuth 2.0 flows with minimal permission scopes.

GitHub

  • GitHub App authentication — No personal access tokens required
  • You control access — Grant access to specific repositories only during installation
  • Revocable anytime — Uninstall the GitHub App to revoke all access
  • Permissions — Read access for indexing, write access for PR creation on branches you specify

Jira & Linear

  • OAuth 2.0 flow — Standard authorization with your Atlassian/Linear account
  • Minimal scopes — Only permissions needed for ticket creation and updates
  • Disconnect anytime — Revoke access from PixelFrame or your Atlassian/Linear settings

Slack

  • OAuth 2.0 flow — Standard Slack app authorization
  • Minimal scopes — Only permissions to post messages to channels you select
  • No message reading — We can only post notifications, not read your conversations

Figma

  • Personal access token — You provide your own Figma token with access to your files
  • File-level access — Token determines which files PixelFrame can read
  • Read-only — We read design data but never modify your Figma files

Data retention: Integration tokens are stored encrypted. Design screenshots are stored in Cloudflare R2 with content-based deduplication. You can delete your project at any time to remove all associated data.

Summary

PixelFrame's privacy model can be summarized as:

  • Code never stored — Only embeddings (mathematical vectors) are stored, not source code
  • On-demand retrieval — Actual code is fetched from GitHub only during generation
  • Repository isolation — Database-level filtering prevents cross-user access
  • Secret redaction — Sensitive data is sanitized before any processing
  • Standard OAuth — All integrations use industry-standard authentication
  • User control — You control which repos, projects, and channels we can access

Best Practices

Platform Setup

  • Connect tools incrementally — Start with Figma, then add Jira/Linear, GitHub, and Slack as your workflow matures
  • Link repositories early — Index your codebase before you need to generate PRs
  • Configure Slack channels — Route events to appropriate channels (engineering, design, product)

Figma Organization

  • Use Sections — PixelFrame uses Figma SECTION nodes for automatic flow organization
  • Use design tokens — Token resolution works best when you use Figma Variables
  • Descriptive naming — Screen and flow names appear in specs and tickets

Version Control

  • Create versions for milestones — Major design updates, sprint boundaries, releases
  • Use descriptive version names — "Login redesign" vs "v2"
  • Review changes before committing — Use visual heatmaps to verify what changed

Specs & Tickets

  • Preview first, save later — AI generates a preview; edit before saving to your backlog
  • Customize as needed — Title, user story, and acceptance criteria are all editable
  • Export to Jira/Linear before generating PRs — This enables automatic PR linking
  • Re-export after edits — Specs can go back from "Exported" to "Ready" for re-editing

Code Generation

  • PRs are on-demand — Click "Generate PR" only when you're ready
  • Detailed spec descriptions help — More context means better file matching
  • Review generated code — AI generates minimal changes; add business logic and tests
  • You control the merge — PRs go through your normal review process in GitHub

Team Workflow

  • Designers sync from Figma — Use the plugin to commit design versions
  • Product reviews specs — Verify acceptance criteria before export
  • Engineers generate PRs — Review code, add logic, merge
  • Everyone stays informed via Slack — No manual status updates needed