Skip to content

feat: add Tailcall config builder#611

Open
jamilahmadzai wants to merge 1 commit into
tailcallhq:developfrom
jamilahmadzai:feature/config-builder-373
Open

feat: add Tailcall config builder#611
jamilahmadzai wants to merge 1 commit into
tailcallhq:developfrom
jamilahmadzai:feature/config-builder-373

Conversation

@jamilahmadzai
Copy link
Copy Markdown

/claim #373

Summary

  • Adds /app/config as a schema-driven Tailcall config builder that fetches the live runtime schema from tailcallhq/tailcall at page load.
  • Renders config sections from the schema, including optional fields, repeatable arrays, object variants, numeric/boolean controls, and searchable enum inputs.
  • Prunes and validates the generated config before export, then supports JSON, YAML, and GraphQL preview with copy/download actions.
  • Adds JSON import for editing existing configs and a direct entry point from /playground.

Notes

  • No new runtime dependencies or lockfile changes.
  • Handles schema refs, allOf, oneOf, and anyOf so the UI follows schema changes without hardcoding field lists.
  • Export actions stay disabled until there is at least one valid generated setting.

Validation

  • npm ci
  • npx prettier --write src/components/config-builder/ConfigBuilder.tsx src/pages/app/config.tsx src/components/playground/Playground.tsx
  • git diff --check
  • npm run build
  • ./node_modules/.bin/cypress run --config baseUrl=http://127.0.0.1:3000 --spec cypress/e2e/config_builder_tmp.cy.ts against the generated production build, including desktop/mobile screenshots, JSON import, JSON export, GraphQL export, and playground link checks. The temporary spec was removed before commit.
  • npm run typecheck -- --pretty false still fails on existing generated GraphQL/DocSearch typing issues outside this change; no errors are reported for the new config builder or touched playground files.

Payment method: Algora bounty-platform payout to GitHub user @jamilahmadzai.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant