Documentation

Devflair Docs

Devflair is the marketing workspace for indie devs. Connect your app stores once, then optimize listings, respond to reviews, draft launch announcements from releases, and publish across X, Bluesky, LinkedIn, Mastodon and Threads — all from one place.

Devflair — connecting your projects to every platform you ship on

ASO Suite

AI-generated descriptions, keywords, subtitles, promo text — pushed straight to ASC/Play.

Screenshot Studio

One upload, all device sizes. Multi-device layout + direct ASC upload.

Reviews AI

Suggested replies for every new review, tone-matched to your product.

Release Drafts

GitHub releases auto-draft social posts. Tag a product, we write the launch.

Automations

Status changes, milestones, and reviews trigger drafts without lifting a finger.

Multi-platform publish

Post to 5 networks with one click — X, Bluesky, LinkedIn, Mastodon, Threads.

Quick Start#

From zero to App Store optimization — or GitHub release drafting — in about 10 minutes.

  1. 1

    Create your account

    Sign up at devflair.xyz with email + password. You'll be dropped into onboarding.

  2. 2

    Pick a category

    Mobile apps, desktop, games, web/SaaS, open source, digital products, or creator. This decides which integrations appear in your workspace.

  3. 3

    Create your first product

    Name, tagline, audience, URL. This feeds the AI context for every generation you run.

  4. 4

    Connect an integration

    From the Integrations Hub: App Store Connect (.p8 key), GitHub App (install on your repos), or Google Play (service account JSON).

  5. 5

    Run your first workflow

    iOS → go to ASO Suite, generate a new description, push it to App Store Connect. OSS → watch GitHub release drafts land in /releases.

You can connect multiple integrations, but on Free/Solo plans they must share the same category (e.g. iOS + Android = both “mobile”, fine). Mixing categories requires Team.

Products#

A “product” is whatever you’re marketing — an app, a game, an npm package, a newsletter. Every AI generation you run pulls from the product’s context (name, tagline, audience, notes) so the output sounds like your product.

Creating a product#

During onboarding you create your first product. To add more, go to Projects in the nav. Free plan = 1 product. Solo = 3. Team = 10.

Product context & AI quality#

The Context field accepts free-form notes. Paste in:

  • Key features, audience, differentiators
  • Voice/tone guidelines (“casual, no emojis, developer-first”)
  • Brand dos and don’ts
  • Competitor positioning

The more context you provide, the less you’ll edit AI output. 400-800 words is a sweet spot.

Products are automatically linked when you connect an integration: ASC apps seed iOS products, Play packages seed Android products. For OSS, go to the connected GitHub tile in Integrations and attach a repo to your product there.

Integrations Hub#

One place to connect every platform you ship on. Lives at Settings → Integrations.

Live integrations#

App Store Connectfree

iOS/iPadOS/macOS. Upload a .p8 API key. Unlocks ASO Suite, Screenshot Studio (iPhone + iPad), Reviews AI, submit/release pipeline.

GitHub Appsolo

Install the Devflair App on your repos. Release events auto-draft social posts in /releases.

Google Playsolo

Android apps. Service account JSON + package names. Unlocks Play ASO, screenshot push, reviews (last 7 days).

On the roadmap#

Steam and Epic land Q3 2026. Microsoft Store, Gumroad, Lemon Squeezy, and Product Hunt land Q4 2026. See the full public roadmap.

Category gates#

Free and Solo plans cap you at one category — iOS + Android works (both “mobile”), but iOS + OSS would be two categories. Mixing categories requires Team. This keeps smaller plans focused and prevents Devflair from becoming a cross-everything subscription creep.

Apps Dashboard#

Once ASC or Play is connected, the Apps page pulls live data for every app the integration has access to.

Each card shows:

  • App icon, name, bundle ID
  • Current version state (READY_FOR_SALE, PREPARE_FOR_SUBMISSION, etc.)
  • 7-day install count and impressions (where analytics are available)
  • Rating + review count
  • Per-app quick-links to ASO Suite, Screenshots, Reviews for that app

Enabling analytics#

ASC analytics aren’t on by default — click Enable Analytics on a card to have Apple start producing daily reports. First data arrives 24–48h later. Play analytics require enabling BigQuery export in Play Console (not wrapped by Devflair — manual setup).

ASO Suite#

AI-generated App Store copy that you can push directly to App Store Connect or Google Play — no copy/paste, no download/reupload. solo required for push; generation works on Free.

Fields Devflair writes#

Description4,000 chars

The long body. Lead with the hook that's converting best for your funnel.

Keywords100 chars (Apple)

Comma-separated. Don't repeat your app name — Apple indexes it automatically.

Subtitle30 chars

iOS only. Benefit-focused one-liner.

What's New4,000 chars

Release notes. Auto-drafted when version hits PREPARE_FOR_SUBMISSION.

Promotional Text170 chars

iOS only. Updates anytime without a new review — use for campaigns.

Title (Play)30 chars

Play Console app title.

Editable entries + AI generate#

Every field has both a plain editable box (for your own copy) and a Generate with AI button. Generated output drops into the same box — you can accept, tweak, or regenerate. Nothing hits the App Store until you click Push to App Store.

Pushing to stores#

When you click Push:

  • Devflair finds the editable version (creates one if the latest is live)
  • Writes your change via the ASC or Play API
  • Returns the updated value from the store as confirmation
  • Records the push in your ASO changelog (for impact tracking)

Promotional Text on iOS updates instantly. Other fields take effect with your next version. Play commits use changesNotSentForReview: true — you control the review submission separately.

Screenshot Studio#

One upload, all device sizes, direct ASC upload. Lives at /screenshots.

Multi-device output#

Upload your raw screenshots once. Devflair detects the aspect ratio and filters the device picker to compatible sizes. Current presets:

  • iPhone 6.9” (APP_IPHONE_69) — 1320×2868, iPhone 16 Pro Max
  • iPhone 6.7” (APP_IPHONE_67) — 1290×2796, iPhone 15 Pro Max
  • iPhone 6.5” (APP_IPHONE_65) — 1284×2778
  • iPhone 5.5” (APP_IPHONE_55) — 1242×2208, SE/legacy
  • iPad Pro 13” (APP_IPAD_PRO_3GEN_129) — 2064×2752
  • iPad Pro 12.9” (APP_IPAD_PRO_129) — 2048×2732

Templates + AI layout#

Pick a visual template (Glass, Editorial, Terminal, Gradient Flow, Clean, Neon) or let AI compose a layout from your screenshots. Layouts use normalized coordinates so a single design renders at every target resolution without distortion.

Direct upload to App Store#

When you’re happy, click Push to App Store (or Play). Devflair signs an ASC JWT, creates screenshot sets per device, uploads each render, and commits. No downloading PNGs and re-uploading to App Store Connect.

Batch uploads preserve the full set — we no longer wipe previous files per screenshot. Only the device’s complete set is replaced atomically at commit.

Reviews AI#

The Reviews page pulls recent reviews from every connected app and generates tone-matched reply suggestions.

Where reviews come from#

  • iOS: iTunes RSS feed per territory — public, no auth, ~20 req/min. All history available.
  • Android: Play Developer API — last 7 days only. Older reviews require BigQuery export.

AI-suggested replies#

Low ratings (1–3★) get 3 suggested replies — empathetic, action-oriented, and brief. Tone adapts to your product context. High ratings (4–5★) get a “Turn into social proof” button that drafts a quote-post.

Play replies are capped at 350 chars (Play Store limit). Devflair enforces the limit before submit.

Release Drafts#

When you publish a GitHub release, Devflair auto-creates a draft social post. Lives at /releases. solo required.

GitHub release → AI draft → your social accounts
  1. 1

    Install the GitHub App

    From Integrations Hub → GitHub → Install on GitHub. Pick the org + repos you want Devflair to watch.

  2. 2

    Link each product to a repo

    In the connected GitHub tile, expand "Manage repos" and pick the repo for each product. Links can be changed later.

  3. 3

    Publish a release

    git tag + push. When GitHub marks the release as published, Devflair receives a webhook within seconds.

  4. 4

    Edit the draft in /releases

    A draft lands with a plain initial summary. Click "Enhance with AI" to flesh it out using your product context and release notes.

  5. 5

    Publish to socials

    One click publishes across your connected social accounts.

Manual release import#

Not using GitHub? Paste a release URL in /releases → Manual Import. Devflair fetches the notes and generates a draft the same way.

Connecting Social Accounts#

Devflair publishes to X, Bluesky, LinkedIn, Mastodon, and Threads. Each is BYOK (Bring Your Own Keys) — credentials are encrypted with AES-256-GCM at rest. Configure under Settings → Social Accounts.

X (Twitter)#

Create a project at developer.x.com. Get Consumer Keys + OAuth 1.0a user access tokens (Read+Write). Paste all four into Devflair.

Bluesky#

Create an App Password in Bluesky Settings → App Passwords. Paste your handle (e.g. you.bsky.social) + the app password.

LinkedIn, Mastodon, Threads#

LinkedIn uses OAuth (click Connect). Mastodon needs your instance URL + an application access token. Threads uses Meta’s Graph API — paste token + user ID.

AI Keys & Model Selection#

Devflair uses AI for ASO generation, post drafting, review replies, and layout composition. Everything is BYOK — supported providers: Anthropic (Claude), OpenAI (GPT), Google (Gemini).

Included by plan#

  • free — BYOK only. Supply your own provider key.
  • solo — Includes Claude Haiku. No key needed to start.
  • team — Includes Claude Sonnet. Higher-quality output for all AI features.

Adding a key#

Go to Settings → AI Keys, paste your provider key, pick a preferred provider, and click Save. After the first save you can also choose a specific model (e.g. claude-haiku-4-5).

Keys are encrypted (AES-256-GCM) and never returned by the API or UI after save — we only show “✓ saved”. Rotate by pasting a new one.

Compose & Post#

Smart Compose is status-aware — when an app event fires, compose pre-populates with contextual copy. You can also start a draft from scratch.

Selecting platforms#

Tick the platforms at the top of Compose. Devflair auto-checks character counts against each platform’s limit (X: 280, LinkedIn: 3000, Bluesky: 300, Mastodon: 500, Threads: 500) and warns before you exceed.

Drafting with AI#

Type a few bullet-style notes, pick a product (for context), click Draft. The AI writes a platform-appropriate post. Edit inline or click Regenerate for a new variation.

Paste a URL in the notes and Devflair fetches the page meta (title, description, og:image) to ground the AI in what the link is actually about.

Adding media#

Attach images from your device or from your product’s saved image library. Images upload to the same storage bucket used by Screenshot Studio and are cleaned up after 30 days.

Saving & loading drafts#

Drafts auto-save as you type. Reload later from the Drafts sidebar. Closed tabs don’t lose work.

Threads#

Multi-post threads work on X, Bluesky, and Threads. Toggle Thread mode in Compose or use the Split into thread AI tool to break a long draft into platform-safe chunks (with 1/N numbering).

Scheduling & Calendar#

Solo plan and above. Schedule posts for later — a cron fires every 5 minutes and posts anything whose scheduled time has passed.

Scheduling a post#

From Compose, click the clock icon next to Publish → pick a date/time → Save to queue. Times are stored in UTC; the UI shows them in your local zone.

Queue management#

/queue lists everything pending. Edit content, reschedule, or cancel. Failed posts show the platform error and let you retry after fixing credentials.

Calendar view#

/calendar is the visual month/week/day view. Drag posts to reschedule.

Campaign Studio#

team Plan a multi-day launch — AI generates a sequence of posts across platforms with staggered times (X immediately, LinkedIn +2h, Bluesky +4h, day 3 follow-up, day 7 retrospective, etc.).

Feed it a product, a launch date, and a goal (awareness / conversion / developer-focused). Edit any post before it’s scheduled.

Automations#

Event → action rules. When something happens in your stores or repos, Devflair can draft or schedule a post without you lifting a finger. Lives at /automations.

Events you can automate#

  • App status change — WAITING_FOR_REVIEW, IN_REVIEW, READY_FOR_SALE, REJECTED
  • New review received — with a rating filter (e.g. only 4–5★)
  • Revenue milestone — $100, $500, $1k, $5k, $10k…
  • Download milestone — 100, 1k, 10k, 100k…
  • Featured by Apple — editorial placement detected
  • GitHub release published

Per-event behavior#

For each rule you choose:

  • Auto-draft — lands in Compose, you review and post manually.
  • Auto-schedule — queued with a 30-min review window (cancel before it fires).
  • Disabled — no automation for this event.

Use Auto-schedule for time-sensitive events (READY_FOR_SALE launches) and Auto-draft for everything else.

Post History & Analytics#

Every post Devflair sends is recorded. Reload at /history.

Reading your history#

Filter by product, platform, or source (manual / scheduled / api). Each row links out to the live post for verification.

Engagement analytics#

team Devflair polls X and Bluesky at +1h, +24h, +7d to capture likes, reposts, replies, and impressions. Use this to learn what kinds of posts work for your audience — surfaced back in Compose as “Your top-performing patterns” suggestions.

Notification Emails#

Devflair sends transactional emails when something needs your attention.

  • App status change — an app you track transitions to IN_REVIEW, READY_FOR_SALE, or REJECTED
  • Scheduled post failure — a queued post couldn’t send (usually expired credentials)
  • Billing events — payment failed, upcoming renewal, plan change

You can opt out of app status emails in Settings. Scheduled failures and billing alerts can’t be disabled — they’re required for account health.

Public API#

Devflair exposes a REST API for programmatic access — compose drafts, publish, schedule, manage products + post history. Full interactive reference at /docs/api.

Authentication#

Send Authorization: Bearer df_live_… on every request. Create a key at Settings → Developers — the full value is shown once at creation.

Rate limits#

  • free — 100 requests/day
  • solo — 1,000 requests/day
  • team — 10,000 requests/day

Limits reset at 00:00 UTC. Responses include X-RateLimit-Limit, X-RateLimit-Remaining, and X-RateLimit-Reset headers.

Scopes#

Keys can optionally declare scopes. Empty = full access (default). Named scopes restrict what the key can do: read:*, write:projects, publish, schedule, compose, settings.

Not in v1 yet: App Store Connect, GitHub App, and Google Play integrations require browser session auth (cookies), not API keys. Use the web app for those flows. Tell us if you need them programmatically.

Full API reference

Browse every endpoint, required fields, and response shapes in the interactive reference.

Open API reference

Import / Export#

Your data is yours. Export everything as JSON at any time.

  • Products + context
  • Full post history with platform IDs
  • Scheduled queue
  • Automation rules
  • Review response drafts

Request an export at webmaster@devflair.xyz. Self-serve export is on the Q4 2026 roadmap.

Feedback Engine#

The feedback bubble in the bottom-right of every page sends directly to the team. Bug reports and feature requests move the roadmap — check the public roadmap for shipping dates.

Plans & Pricing#

Three tiers. Everything compounds — Solo includes all of Free, Team includes all of Solo.

freeFree
  • 1 product
  • BYOK AI (no included credits)
  • ASO Suite (generate only)
  • Compose + publish to 5 platforms
  • Apps dashboard (read-only)
  • Reviews dashboard
  • Multi-device Screenshot Studio
  • Public API — 100 req/day
solo$19/mo
  • 3 products
  • Claude Haiku included
  • ASO push to stores
  • Google Play + GitHub integrations
  • Release Drafts
  • Scheduling & calendar
  • Automations
  • Public API — 1k req/day
team$29/mo
  • 10 products
  • Claude Sonnet included
  • Cross-category integrations
  • Campaign Studio
  • Engagement analytics
  • Custom webhooks (coming)
  • Priority support
  • Public API — 10k req/day

Annual plans save ~17%: Solo $190/yr, Team $290/yr. Upgrade/downgrade anytime from Settings → Billing.

Keyboard Shortcuts#

⌘ / Ctrl + EnterPublish from Compose
⌘ / Ctrl + SSave draft
⌘ / Ctrl + KQuick-find / jump to page
G then HGo to Home
G then AGo to Apps
G then CGo to Compose
G then RGo to Reviews
?Show all shortcuts