Skip to content

PRDCT-489: Apps section rework (canonical, variant B)#1013

Draft
Iamfle4ka wants to merge 30 commits into
mainfrom
PRDCT-358-apps-structure-b
Draft

PRDCT-489: Apps section rework (canonical, variant B)#1013
Iamfle4ka wants to merge 30 commits into
mainfrom
PRDCT-358-apps-structure-b

Conversation

@Iamfle4ka

@Iamfle4ka Iamfle4ka commented Jul 10, 2026

Copy link
Copy Markdown
Collaborator

Apps section — full rework (canonical)

This is the canonical Apps section PR (supersedes #996, which was variant A). Base is main; the diff is the complete rework.

Structure (clean Diátaxis, sequential)

  • Overview — what an app is, "What people build" typology, two ways to build, Beyond dashboards.
  • Build your first app with Kai (tutorial) — getting-started; the old "Build in the UI" is folded in as "Create an app manually".
  • What are Keboola apps (explanation) — incl. the Python/JS stack.
  • Build locally (how-to) — the Python/JS dev workflow (the standalone python-js page is merged in here; /data-apps/python-js/ 301s to it).
  • Authentication, Publish and share (how-to).
  • Apps reference (reference).
  • Streamlit apps — scoped subsection with "Streamlit apps only" notes + its own backend/packages reference.
  • Grouped nav: Build (With Kai / Locally) and Run & share (Authentication / Publish and share).
  • Every page ends with a Next → footer forming one reading chain.

Content & accuracy

  • All screenshots real, from the dummy-data demo project 264 (KBC Toy Co.); no real-customer data. Web-UI-flow / draft-preview / publish shots included; Publish-and-share has section-matched images.
  • Kai flow verified live: build → draft preview → Publish to Production (approval model, URL+password).
  • Dev-branch mentions removed (don't work for apps); Basic-password default documented; skill = real download button; agent CTA prominent.
  • Owner facts flagged inline + tracked in Linear PRDCT-471 / 472 / 473.

Verification

npm run build clean; node scripts/audit-phase2.mjs MISSING IMAGES 0; old URLs (/data-apps/build-in-the-ui/, /data-apps/examples/, /data-apps/python-js/) redirect.

Draft — do not merge. Review chain: Mihal → Miro.

🤖 Generated with Claude Code

Nikita and others added 10 commits July 2, 2026 18:07
…orm)

Restructure src/content/docs/data-apps to the approved skeleton, realized
with the real old content: hub, getting-started (real Kai walkthrough
performed in project 6015 + Story of Us inspiration), examples (Jordan's
3 public picks: Seasonal, Flight Shockwave, Color Season Analyzer),
what-are-apps, build-with-kai / build-in-the-ui / build-locally,
python-js overview (framework page restored per review), authentication
(4 OIDC pages merged), publish-and-share, reference (limits at bottom),
streamlit subtree (lock-version 3->1 merge, design-guide move).

Images: docs reference /data-apps/*.png served from public/data-apps/;
grey placeholder PNGs in place, real captures via apps-section/screenshots.mjs.
Release changelog deleted (belongs in changelog). VERIFY/TODO owner flags
embedded for the accuracy stage. apps-section/ bundle: CONTEXT, STRUCTURE,
content-proposal, APPS-UPDATE-PLAN, HANDOFF-PROMPT, screenshots.mjs.

Structure+form only — facts moved verbatim, not verified. No PR yet.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…ix sidebar order

Page-by-page review of the Apps (data-apps) section, grounded in the live
product UI where facts were needed.

- Sidebar: move "What are apps?" before the Build guides; rename examples → "Beyond dashboards"
- Canonical "Python/JS vs Streamlit" framing (what-are-apps anchor); consistent "Python/JS" label
- Build with Kai: full topic breakdown (prompt/refine/governance) + real Kai chat & Approve screenshots
- Build in the UI: rewrite to observed create → config → deploy flow + 3 real screenshots
- Build locally: fill "Sync to project" and "AI coding tool" sections from live UI + Python/JS screenshots
- What are apps: sharpen "governed by default"; add a live deployed-app screenshot
- Python/JS: real app-config screenshot + downloadable AI-skill note
- Authentication: correct to the real Authentication Type dropdown (6 methods) + fresh screenshot
- Reference: lede + on-page nav; lock-version illustrative-versions note; code-fence languages
- Remove stale/orphan images (app-modal, unused examples-*)
- Add project skill: capturing-keboola-ui-screenshots (CDP screenshot workflow)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- Publish and share: reframe to the grounded deploy → auth → share flow;
  note the dev-branch → production path; flag the ambiguous "promote to
  production" semantics for a maintainer instead of asserting it.
- Reference: flesh out the Per-app settings table from the observed app
  config (Code Source, backend version/size, auto-sleep); fix the Secrets
  error — the variable NAME is uppercased, the value is passed through unchanged.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
apps-section/ (planning, context, handoff, capture scripts) and .claude/
are local-only working files, not product docs. Untrack and gitignore them
so they don't ship in the Apps PR. Follows the repo precedent (db81d1f).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…date

# Conflicts:
#	src/content/docs/data-apps/storage-access/index.md
Per Jordan's review: manual creation lives on the same Create App screen,
so it becomes a 'Create an app manually' section of the Kai page instead
of a separate page. 301 redirect added; nav + inbound links updated;
Python/JS card listed first in the manual flow.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
The overview now carries the essential info itself (what an app is,
Python/JS stack, sleep/wake, two build paths, run & share) instead of
being a link directory. The three showcase apps move onto the overview
as a 'Beyond dashboards' section; /data-apps/examples/ 301s here.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- python-js: new 'How development works' loop (repo, server-side data
  access, redeploy, logs, sleep/wake) + AI Kit block with install
  commands; VERIFY(Jordan) for a canonical skill-file download URL.
- build-locally: AI Kit install commands alongside the in-product
  Download Skill.
- what-are-apps: Streamlit de-emphasized — 'The stack: Python/JS'
  replaces the top-level comparison.
- streamlit/*: 'Streamlit apps only' scoping notes; migration-page TODO.
- reference: backend-versions/pre-installed packages scoped as
  Streamlit-only.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…eenshots

Verified live in project 6015 (new Python/JS backend, 2026-07-10):
- Kai builds a DRAFT in a split-screen builder (chat | Preview/Code |
  Publish to Production) — no Approve card; rewrote the build flow in
  build-with-kai and getting-started steps 3-5 accordingly.
- App detail tabs: Overview/Advanced Settings/All Runs/Terminal Logs/
  Drafts/Versions; Kai apps get a private Keboola-managed Git repo;
  scaffold files App.tsx / index.ts / kbcQuery.ts.
- Deploy wizard: Python/JS backend format '1.6.1 - Python 3.11 +
  JavaScript (Node 20, Bun 1.3)'; XSmall = 8GB/1CPU (reference updated).
- Auth dropdown re-shot (None/Basic/OIDC/GitLab/GitHub/JumpCloud).
- Skill file source confirmed (ai-kit dataapp-development SKILL.md);
  direct raw download link added.
- 9 screenshots replaced with new-backend captures; published-app shots
  still pending (app start failures in the demo project — flagged).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
For preview comparison against variant A (PR #996), per Jordan:
- Sidebar groups: Build (With Kai / Locally) and Run & share
  (Authentication / Publish and share); Reference; Streamlit last.
- convert-nav now supports label-only groups (no landing page).
- python-js.md merged away: the stack explainer moves into
  what-are-apps (The stack: Python/JS), the dev workflow into
  build-locally; /data-apps/python-js/ 301s to build-locally.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@vercel

vercel Bot commented Jul 10, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
connection-docs Ready Ready Preview, Comment Jul 15, 2026 4:50pm

Request Review

@linear-code

linear-code Bot commented Jul 10, 2026

Copy link
Copy Markdown

PRDCT-358

PRDCT-489

Nikita and others added 2 commits July 10, 2026 18:28
…, skill CTAs

Per Jordan's live review of the previews:
- Remove all development-branch mentions from app pages (branches don't
  work for apps).
- Document Basic (Password) as the default auth and where the generated
  password appears (next to Open App after deploy; Kai shows it last).
- Prominent 'Get your agent started' skill-download CTA on
  build-with-kai, build-locally, python-js — a human-facing download,
  agents must not auto-fetch skills.
- Step-4 (draft preview) screenshot placeholder — to capture in the
  new demo project (264, KBC Toy Co.).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…re-b

# Conflicts:
#	src/content/docs/data-apps/python-js.md
Nikita and others added 2 commits July 10, 2026 19:04
…flow

All app screenshots re-shot in the designated demo project (KBC Toy Co.,
dummy Shopify data) on the new Python/JS backend — no real data in any
frame. End-to-end flow verified by actually building and publishing a
Toy Store Sales Dashboard with Kai:

- Confirmation card DOES appear before Kai creates the app (Decline /
  Always allow / Approve) — approve step restored in getting-started
  and build-with-kai with a fresh screenshot.
- New step-4 image: split-screen draft with live Preview ('a private
  draft that updates live as Kai builds' — verbatim product copy).
- Publish mechanics documented from observation: Kai creates the prod
  app up front, works on a draft branch in the managed repo, publish =
  merge draft -> main, deploy, cleanup; final card gives URL, password,
  Open App (password masked in the shot).
- Published state shot: Active config page + Kai's URL/password card.
- Old Streamlit-era live-app image removed; standalone published-app
  shot flagged (needs manual password login).
- Advanced Settings houses env vars/theme/mappings; Drafts tab only
  while a draft exists.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…re-b

# Conflicts:
#	src/content/docs/data-apps/python-js.md
Nikita and others added 2 commits July 10, 2026 19:11
…rview

- Standalone shot of the published Toy Store Sales Dashboard at its own
  URL (captured after manual password login) — restored in
  getting-started step 5 and what-are-apps.
- Overview gains a compact 'What people build' typology (dashboards,
  internal tools, narratives, configurators, agent-facing services)
  with the live-app image, leading into Beyond dashboards.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Nikita and others added 2 commits July 10, 2026 19:16
Per review feedback the CTA link becomes a solid accent button
(.skill-download-btn in custom.css). The skill file is vendored into
public/data-apps/ so the download attribute actually downloads
(cross-origin raw.githubusercontent links open in the browser instead).
Source + sync TODO noted inline (keboola/ai-kit@main).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…re-b

# Conflicts:
#	src/content/docs/data-apps/python-js.md
Nikita and others added 2 commits July 10, 2026 19:23
Per Jordan + user: the two pages described the same flow. The merged
page lives at /data-apps/getting-started/ ('Build your first app with
Kai'): the 5-step walkthrough with screenshots, prompt tips folded into
step 2, refining into step 4, then the deeper mechanics (approval
model, drafts->production, data access, manual creation, agent-facing
apps). /data-apps/build-with-kai/ 301s here; nav entry 'Build with
Kai' points at it; all inbound links updated.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…re-b

# Conflicts:
#	_data/navigation.yml
#	src/content/docs/data-apps/build-with-kai.md
#	src/content/docs/data-apps/index.md
#	src/content/docs/data-apps/python-js.md
#	src/sidebar.mjs
…lit section

The backend-version format (1.15.x - Python + Streamlit), the Python-
variants table, and the pre-installed package list are Streamlit-image
facts — they now live on /data-apps/streamlit/ (with the legacy
/components/data-apps/backend-versions/ redirect). The reference keeps
a Python/JS-focused Backend versions section: wizard format, deps from
the repository, pointer to the Streamlit section.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Nikita and others added 2 commits July 10, 2026 19:48
- Replace auth-options.png with a clean frame: the Authentication Type
  dropdown open showing all six methods (None/Basic/OIDC/GitLab/GitHub/
  JumpCloud). The previous 264 frame had caught the settings-reorg modal
  instead of the dropdown.
- Publish and share had no images; add the published app's config view
  (App URL + Open in new tab + App Info) and mention the header action
  buttons.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Nikita and others added 2 commits July 10, 2026 19:57
Three distinct images, each under its heading:
- Publish the app -> the Deploy App wizard (backend size + timeout).
- Share with your team -> the Overview App URL block (copy + open).
- Manage a deployed app -> the app header + ... menu open (Copy app,
  Automate, Debug mode, Delete app). Corrected the actions list to the
  real menu.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@Iamfle4ka
Iamfle4ka changed the base branch from PRDCT-358-apps-restructure to main July 13, 2026 16:34
…onical)

Per the docs-section rules, every page now ends with a single '**Next →**'
footer forming one reading chain: Overview → What are apps → Build with
Kai → Build locally → Authentication → Publish and share → Reference →
Streamlit → back to Overview. Replaced ad-hoc 'Next steps' bullet lists
with the standard footer. Retargeted two prose links off the removed
python-js page to build-locally (redirect still covers old URLs).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@Iamfle4ka Iamfle4ka changed the title docs(apps): structure variant B (grouped) — preview comparison, do not merge docs(apps): Apps section rework (canonical) Jul 13, 2026
- Manual create: Python/JS is Git-only — removed the inline-Code option
  for it (Code stays for Streamlit); fixed steps 2 & 4 + config image alt.
- Removed the 'Expose the app to other agents' section from
  getting-started (misleading in a tutorial); the capability now lives as
  an 'Agent-facing services' bullet on what-are-apps.
- what-are-apps: folded the one-line 'How an app is hosted' section into
  'How apps fit into Keboola' (kept the hosting-model TODO).
- Dedup: what-are-apps is the canonical 'What you can build' list;
  overview 'What people build' trimmed to a teaser linking there, and the
  duplicated live-app image dropped from overview.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Verified the migration live in project 264: Streamlit apps have a
'Migrate to Python/JS with Kai' button; Kai proposes a plan and builds a
new Python/JS app (React UI, server-side queries) as a draft, leaving the
Streamlit app untouched until you publish.

- New page streamlit/migrate-to-python-js.md with the real 3-step flow +
  two screenshots (migrate button/plan, migrated draft preview). Linked
  from streamlit/index (replaced the TODO) and nav.
- what-are-apps hero swapped to the migrated Shopify Store Monitor
  dashboard (nicer app, per Jordan) — new app-dashboard.png.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@Iamfle4ka Iamfle4ka changed the title docs(apps): Apps section rework (canonical) PRDCT-358: Apps section rework (canonical) Jul 15, 2026
@Iamfle4ka Iamfle4ka changed the title PRDCT-358: Apps section rework (canonical) PRDCT-489: Apps section rework (canonical, variant B) Jul 15, 2026
… references)

Per Jordan (Jul 14 sync): the download button gave only SKILL.md, but the
canonical resource is the whole dataapp-development/ folder in keboola/ai-kit —
skill, app templates (python / nodejs / python-node / streamlit / duckdb-cache),
and 14 reference guides the agent draws on.

- Vendor the folder verbatim as public/data-apps/keboola-dataapp-development-skill.zip
  (87 files, from ai-kit@b7f57df); drop the single-file vendored .md
- Point both download buttons (getting-started, build-locally) at the zip and
  say what's inside; direct GitHub link now targets the folder, not raw SKILL.md

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

@claude claude Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review posted on behalf of Miroslav Cillik (via Claude). Findings from verifying the Data Apps rework:

Verdict: Solid and accurate where independently verifiable — 6 auth types, Basic-password default, the Streamlit Python 3.10/3.11/3.13 split, and the deliberate choice to keep E2B out of the public docs all check out. But this is not a clean sign-off yet; please resolve the inline items plus the points below first.

To confirm before merge:

  • Merge target / structure variant. This PR's description now calls itself the canonical PR superseding #996, but Linear PRDCT-489 framed #1013 as the grouped "variant B" to compare against the flatter #996. Worth confirming #1013 (grouped) is genuinely the intended merge target and #996 is retired.
  • BigQuery Storage Access. reference.md documents Storage Access as fully supported on both Snowflake and BigQuery, with detailed BigQuery dialect guidance. A June product note listed "BigQuery direct-storage for data apps" as a gap — please confirm it actually shipped before signing off.
  • Single-tenant caveat is missing. Python/JS apps, Kai, and Keboola-managed Git are limited on single-tenant stacks (per the single-tenant SOP), but the docs currently read as if these are universally available. Consider a note — or confirm the omission is intentional for public docs.
  • Version numbers, KBC_TOKEN / secret-naming, OIDC issuers — see the inline comments.
  • Redirects: three moved pages dropped their primary /data-apps/… URLs (reference.md → backend-versions + terminal-log-tab; streamlit/lock-version.md → lock-streamlit-version + code/git-deployment; streamlit/design-guide.md → general-design-guide). Inline suggestions on each. External bookmarks / indexed URLs would 404; no internal links break.
  • Leftover <!-- TODO/VERIFY --> comments across several pages (the PRDCT-471/472/473 hand-offs) — resolve and strip before publish.

Note: the Vercel preview is auth-protected (HTTP 403), so I couldn't verify the live render (images/anchors) — worth a maintainer click-through. This review is from source only.

Posting as event COMMENT — Miro is the human reviewer; this just surfaces findings, it's not an approval or a change request.

description: Per-app settings, environment variables, data access, backend versions, and limits for Keboola apps.
redirect_from:
- /components/data-apps/terminal-log-tab/
- /data-apps/storage-access/

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing redirects for the primary /data-apps/… URLs. This page absorbs the old backend-versions and terminal-log-tab pages, but redirect_from only carries the /components/data-apps/terminal-log-tab/ alias — so the canonical /data-apps/backend-versions/ and /data-apps/terminal-log-tab/ URLs will 404 (the redirect integration doesn't bridge /components/…/data-apps/…). No internal links break, but external bookmarks / indexed URLs would. Suggest adding the bare paths:

Suggested change
- /data-apps/storage-access/
- /data-apps/storage-access/
- /data-apps/backend-versions/
- /data-apps/terminal-log-tab/

Same pattern affects streamlit/lock-version.md and streamlit/design-guide.md (separate comments).

redirect_from:
- /components/data-apps/lock-streamlit-version/
- /components/data-apps/lock-streamlit-version/code-deployment/
- /components/data-apps/lock-streamlit-version/git-deployment/

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same missing-redirect pattern: only the /components/data-apps/lock-streamlit-version/… aliases are listed, so the canonical /data-apps/lock-streamlit-version/ (+ /code-deployment/, /git-deployment/) URLs will 404. Suggest:

Suggested change
- /components/data-apps/lock-streamlit-version/git-deployment/
- /components/data-apps/lock-streamlit-version/git-deployment/
- /data-apps/lock-streamlit-version/
- /data-apps/lock-streamlit-version/code-deployment/
- /data-apps/lock-streamlit-version/git-deployment/

slug: 'data-apps/streamlit/design-guide'
description: Practical patterns for building a user-friendly Streamlit app in Keboola - theming, headers, body components, footers, and Storage communication.
redirect_from:
- /components/data-apps/general-design-guide/

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same pattern: the canonical /data-apps/general-design-guide/ URL is dropped (only the /components/… alias is kept) and will 404. Suggest:

Suggested change
- /components/data-apps/general-design-guide/
- /components/data-apps/general-design-guide/
- /data-apps/general-design-guide/

## Runtime and language support

To securely access Storage, we recommend creating a dedicated Storage token with limited permissions and passing it to your app as a secret. You can generate such a token following the [guide here](https://help.keboola.com/management/project/tokens/).
Backend versions since **1.15.0** are available in multiple Python variants:

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Backend version numbers look stale. The early-July Streamlit release note gives the current scheme as default 1.18.0_python-3.10_streamlit-1.51, with the Python 3.11/3.13 images on the 2.0.0 line (rebased on the Python/JS base). So "since 1.15.0" here — and the 1.15.2 - Python 3.13 + Streamlit 1.51 example on line 170 (repeated on 172) — are inconsistent: 3.13 ships on 2.0.0, not 1.15.x. Please reconcile to the real versions (default 1.18.0 / py3.10; 2.0.0 for py3.11 / py3.13) or drop the specific numbers. The 3.10/3.11/3.13 variant split itself is correct; only the version numbers are in question.

`KBC_TOKEN` is injected automatically and must stay server-side. Don't add it as a secret yourself, and never send it to the browser.
:::

<!-- VERIFY(Adam Vyborny): scaffold (React + Vite + Express), file paths, and the KBC_TOKEN guidance. Source: internal Devin answer grounded in keboola/ui SKILL.md. The current public page tells users to add #KBC_TOKEN as a secret — that is wrong (reserved, auto-injected, silently shadowed) and must be corrected here. -->

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Genuine fix worth confirming and shipping (PRDCT-471): the current public page tells users to add #KBC_TOKEN as a secret, which is wrong — it's reserved/auto-injected and silently shadowed if user-set. The new wording on line 46 is correct. Please confirm the scaffold facts (React + Vite + Express, file paths) with Adam, then strip this <!-- VERIFY --> comment before publish.

| `BRANCH_ID` | Storage API branch ID of the project. |
| `QUERY_SERVICE_URL` | URL of the Query Service API (stack-specific). Set with Storage Access. |

<!-- VERIFY(Adam Vyborny): confirm the full env-var list. Correct the existing error: KBC_TOKEN is reserved/auto-injected, not a secret the user adds; "the value is uppercased" should read "the variable name", not the value. -->

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Two real corrections flagged here (PRDCT-471/473) that the page already applies correctly and just need sign-off:

  1. KBC_TOKEN is reserved/auto-injected, not a user-added secret (line 38 now states this).
  2. It's the variable name that gets uppercased, not the value — line 48 now reads correctly (#my-custom-varMY_CUSTOM_VAR, value passed through unchanged), fixing the previous error.

Please confirm the full env-var list with Adam, then strip this <!-- VERIFY --> comment.

If you enter an app with OIDC, you will be asked to select an `Authentication Provider` and sign in.
| Provider | Keboola provider option | Issuer URL | Notes |
|---|---|---|---|
| **Auth0** | Generic OIDC | `https://<yourDomain>.us.auth0.com/` | Register a regular web application. <!-- VERIFY(Miro): confirm the Auth0 issuer format and provider option. The old page mislabeled this issuer as "Google OAuth 2.0" — do not carry that label forward. --> |

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OIDC provider table (PRDCT-472) — two corrections to confirm against the live UI:

  • Auth0: the old page mislabeled this issuer as "Google OAuth 2.0" — good that it's dropped here; confirm the https://<yourDomain>.us.auth0.com/ format and the "Generic OIDC" provider option.
  • Google Cloud (line 58): the old page used an invalid http://keboola.com (bad scheme); the bare domain keboola.com under Authorized domains is correct — confirm the redirect-URI step order.

Also worth confirming the Entra "Tenant ID" field set. Resolve the per-row <!-- VERIFY --> notes and the line 62 <!-- TODO --> before publish.


- [Live App](https://online-marketing-dashboard-49569899.hub.north-europe.azure.keboola.com)
- [Source Code](https://github.com/keboola/marketing-dashboard-data-app)
<!-- TODO(human-review, Miro): confirm the exact "default vs supported" wording for Python/JS vs Streamlit. Do not state Streamlit is retired. -->

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is one of several intentional <!-- TODO/VERIFY --> hand-offs still in the pages (also index.md:41, what-are-apps.md:18 and :44, authentication.md:57-62, build-locally.md:49, reference.md:44). They don't render (HTML comments), but please resolve and strip all of them before publish. For this one specifically: settle the "default vs supported" wording for Python/JS vs Streamlit — and, as the comment notes, don't state Streamlit is retired.

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