Skip to content

refactor: handle key value formating with mdx and use Breadcrumb for all navigation#3728

Open
Aaron-Ritter wants to merge 28 commits into
FusionAuth:mainfrom
sonderformat-llc:feat/inline-field-input
Open

refactor: handle key value formating with mdx and use Breadcrumb for all navigation#3728
Aaron-Ritter wants to merge 28 commits into
FusionAuth:mainfrom
sonderformat-llc:feat/inline-field-input

Conversation

@Aaron-Ritter
Copy link
Copy Markdown
Contributor

@Aaron-Ritter Aaron-Ritter commented May 21, 2025

This pull request updates the documentation style guidelines and refactors how UI elements, field names, and values are referenced throughout the documentation and example content. The main goal is to standardize and clarify the formatting for keys (field names/labels), values, and navigation/UI elements, replacing custom components with a simpler, more consistent approach using bold, monospace, and the Breadcrumb component. It also removes the now-unnecessary InlineField and InlineUIElement components from the codebase and updates all references accordingly.

Key changes include:

Documentation Style Guideline Updates:

  • Expanded and clarified rules in CONTRIBUTING.md for referencing UI elements, field names (keys), and values:
    • Use bold for field names/labels (keys).
    • Use monospace (backticks) for field values.
    • Use the Breadcrumb component for navigation paths, tabs, buttons, and other non-field UI elements.
    • Provided extensive examples and summary rules for ambiguous cases.

Component and Example Refactoring:

  • Removed InlineField.astro and InlineUIElement.astro components from the codebase and all usages in documentation and blog examples. All previous references are now replaced with bold or Breadcrumb as appropriate.
  • Updated references to field names and values in configuration documentation to use bold and monospace according to the new guidelines.

UI Component Improvements:

  • Improved the visual style of the Breadcrumb.astro component for better clarity and consistency.

These changes ensure that documentation is more readable and consistent, making it easier for users to distinguish between keys, values, and UI navigation elements.

Aaron-Ritter and others added 27 commits May 19, 2025 19:50
# Conflicts:
#	astro/src/components/docs/reference/_configuration-properties.mdx
#	astro/src/content/articles/identity-basics/slow-migration.mdx
#	astro/src/content/articles/identity-basics/what-is-oidc.mdx
#	astro/src/content/articles/identity-basics/what-is-scim.mdx
#	astro/src/content/articles/oauth/oauth-token-storage.mdx
#	astro/src/content/blog/how-to-design-oauth-scopes.mdx
#	astro/src/content/blog/how-to-migrate-from-firebase.mdx
#	astro/src/content/blog/microservices-gateway.mdx
#	astro/src/content/blog/securing-your-api.mdx
#	astro/src/content/blog/test-saml-configuration.mdx
#	astro/src/content/blog/what-happens-after-oauth-authentication-event.mdx
#	astro/src/content/blog/what-is-scim.mdx
#	astro/src/content/docs/_shared/_setup-wizard.mdx
#	astro/src/content/docs/_shared/_userinfo-response.mdx
#	astro/src/content/docs/apis/_application-request-body.mdx
#	astro/src/content/docs/apis/_application-response-body-base.mdx
#	astro/src/content/docs/apis/_import-users-request-body.mdx
#	astro/src/content/docs/apis/_jwt_algorithm.mdx
#	astro/src/content/docs/apis/_login-response-codes-authenticated.mdx
#	astro/src/content/docs/apis/_login-response-codes.mdx
#	astro/src/content/docs/apis/_tenant-request-body.mdx
#	astro/src/content/docs/apis/_user-email-verification-ids-response.mdx
#	astro/src/content/docs/apis/_user-registration-combined-request-body.mdx
#	astro/src/content/docs/apis/_user-registration-combined-response-body.mdx
#	astro/src/content/docs/apis/_user-request-body.mdx
#	astro/src/content/docs/apis/_user-response-body.mdx
#	astro/src/content/docs/apis/_user-search-request-body-elasticsearch-examples.mdx
#	astro/src/content/docs/apis/_user-send-set-password-email.mdx
#	astro/src/content/docs/apis/_users-response-body.mdx
#	astro/src/content/docs/apis/custom-forms/_form-field-key.mdx
#	astro/src/content/docs/apis/custom-forms/_form-response-body.mdx
#	astro/src/content/docs/apis/hosted-backend.mdx
#	astro/src/content/docs/apis/identity-providers/_identity-provider-login-response-body.mdx
#	astro/src/content/docs/apis/login.mdx
#	astro/src/content/docs/apis/scim/scim-group.mdx
#	astro/src/content/docs/apis/two-factor.mdx
#	astro/src/content/docs/apis/users.mdx
#	astro/src/content/docs/archive/apis/two-factor-1-25.mdx
#	astro/src/content/docs/archive/passport-to-fusionauth.mdx
#	astro/src/content/docs/customize/email-and-messages/_email-template-base-url-note.mdx
#	astro/src/content/docs/customize/email-and-messages/email-templates-replacement-variables.mdx
#	astro/src/content/docs/customize/email-and-messages/messengers.mdx
#	astro/src/content/docs/customize/look-and-feel/advanced-themes/index.mdx
#	astro/src/content/docs/customize/look-and-feel/upgrade.mdx
#	astro/src/content/docs/extend/code/lambdas/login-validation.mdx
#	astro/src/content/docs/get-started/core-concepts/applications.mdx
#	astro/src/content/docs/get-started/core-concepts/tenants.mdx
#	astro/src/content/docs/get-started/core-concepts/users.mdx
#	astro/src/content/docs/get-started/download-and-install/docker.mdx
#	astro/src/content/docs/get-started/download-and-install/setup.mdx
#	astro/src/content/docs/get-started/quickstarts/api/quickstart-dotnet-api.mdx
#	astro/src/content/docs/get-started/quickstarts/api/quickstart-java-springboot-api.mdx
#	astro/src/content/docs/get-started/quickstarts/api/quickstart-php-laravel-api.mdx
#	astro/src/content/docs/get-started/quickstarts/app/quickstart-flutter-native.mdx
#	astro/src/content/docs/get-started/quickstarts/app/quickstart-react-native.mdx
#	astro/src/content/docs/get-started/quickstarts/app/quickstart-swift-ios-native-appauth.mdx
#	astro/src/content/docs/get-started/quickstarts/app/quickstart-swift-ios-native.mdx
#	astro/src/content/docs/get-started/quickstarts/web/quickstart-java-springboot-web.mdx
#	astro/src/content/docs/get-started/quickstarts/web/quickstart-php-drupal-web.mdx
#	astro/src/content/docs/get-started/quickstarts/web/quickstart-wordpress-web.mdx
#	astro/src/content/docs/get-started/run-in-the-cloud/_cloud-limits.mdx
#	astro/src/content/docs/get-started/use-cases/api-consents-platform.mdx
#	astro/src/content/docs/get-started/use-cases/app-suite.mdx
#	astro/src/content/docs/lifecycle/authenticate-users/_bootstrapping-sso.mdx
#	astro/src/content/docs/lifecycle/authenticate-users/identity-providers/gaming/discord.mdx
#	astro/src/content/docs/lifecycle/authenticate-users/identity-providers/index.mdx
#	astro/src/content/docs/lifecycle/authenticate-users/identity-providers/overview-oidc.mdx
#	astro/src/content/docs/lifecycle/authenticate-users/identity-providers/social/google.mdx
#	astro/src/content/docs/lifecycle/authenticate-users/identity-providers/social/linkedin.mdx
#	astro/src/content/docs/lifecycle/authenticate-users/multi-factor-authentication.mdx
#	astro/src/content/docs/lifecycle/authenticate-users/oauth/endpoints.mdx
#	astro/src/content/docs/lifecycle/authenticate-users/oauth/tokens.mdx
#	astro/src/content/docs/lifecycle/manage-users/account-management/index.mdx
#	astro/src/content/docs/lifecycle/manage-users/search/user-search-with-elasticsearch.mdx
#	astro/src/content/docs/lifecycle/manage-users/verification/_troubleshooting-gating.mdx
#	astro/src/content/docs/lifecycle/manage-users/verification/gate-accounts-until-user-email-verified.mdx
#	astro/src/content/docs/lifecycle/manage-users/verification/registration-gate-accounts-until-verified.mdx
#	astro/src/content/docs/lifecycle/migrate-users/connectors/index.mdx
#	astro/src/content/docs/lifecycle/migrate-users/general-migration.mdx
#	astro/src/content/docs/lifecycle/migrate-users/provider-specific/_make-webservice-public.mdx
#	astro/src/content/docs/lifecycle/migrate-users/provider-specific/cognito.mdx
#	astro/src/content/docs/lifecycle/migrate-users/provider-specific/forgerock.mdx
#	astro/src/content/docs/lifecycle/migrate-users/provider-specific/frontegg.mdx
#	astro/src/content/docs/lifecycle/migrate-users/provider-specific/keycloak.mdx
#	astro/src/content/docs/lifecycle/migrate-users/provider-specific/wordpress.mdx
#	astro/src/content/docs/lifecycle/register-users/advanced-registration-forms.mdx
#	astro/src/content/docs/operate/monitor/elastic.mdx
#	astro/src/content/docs/operate/monitor/opentelemetry.mdx
#	astro/src/content/docs/reference/data-types.mdx
#	astro/src/content/docs/release-notes/archive.mdx
#	astro/src/content/docs/release-notes/index.mdx
#	astro/src/content/json/generated/sample-usage-data.json
- docs: apply review-thread breadcrumb updates and keep archive unchanged
- docs: align blog docs and articles UI labels with updated style guidance
- docs: refine contributing guidance for text styles and UI references
- docs: clarify UI component usage rules in contributing guide
- docs: complete full highlighted-text styling audit for docs section
- docs: apply styling components to highlighted UI labels across docs
- docs: align content docs with Breadcrumb tab and section rules
- docs: require Breadcrumb for tabs and InlineUIElement for sections
- docs: align tab guidance with existing docs usage
- docs: clarify UI component usage guidance in CONTRIBUTING
- chore: remove unintended package-lock changes
- chore: outline plan for CONTRIBUTING guidance update
…ine-field-input

# Conflicts:
#	astro/src/content/blog/6-indicators-doing-mocking-wrong.mdx
#	astro/src/content/blog/anonymous-user.mdx
#	astro/src/content/blog/backend-for-frontend.mdx
#	astro/src/content/blog/dotnet-templates.mdx
#	astro/src/content/blog/get-more-value-out-of-fusionauth.mdx
#	astro/src/content/blog/how-to-design-oauth-scopes.mdx
#	astro/src/content/blog/identity-verification-before-registration.mdx
#	astro/src/content/blog/modeling-family-and-consents.mdx
#	astro/src/content/blog/nextjs-single-sign-on.mdx
#	astro/src/content/blog/react-example-application.mdx
#	astro/src/content/blog/spring-and-fusionauth.mdx
#	astro/src/content/blog/using-identity-provider-links.mdx
#	astro/src/content/docs/extend/events-and-webhooks/webhook-event-log.mdx
#	astro/src/content/docs/extend/examples/5-minute-intro/_5-minute-logout.mdx
#	astro/src/content/docs/extend/examples/device-limiting.mdx
#	astro/src/content/docs/extend/examples/multi-application-dashboard.mdx
#	astro/src/content/docs/get-started/quickstarts/api/quickstart-dotnet-api.mdx
#	astro/src/content/docs/get-started/quickstarts/api/quickstart-golang-api.mdx
#	astro/src/content/docs/get-started/quickstarts/api/quickstart-java-springboot-api.mdx
#	astro/src/content/docs/get-started/quickstarts/api/quickstart-javascript-express-api.mdx
#	astro/src/content/docs/get-started/quickstarts/api/quickstart-ruby-on-rails-api.mdx
#	astro/src/content/docs/get-started/quickstarts/app/quickstart-flutter-native.mdx
#	astro/src/content/docs/get-started/quickstarts/app/quickstart-swift-ios-native-appauth.mdx
#	astro/src/content/docs/get-started/quickstarts/app/quickstart-swift-ios-native.mdx
#	astro/src/content/docs/get-started/quickstarts/spa/quickstart-javascript-angular-web.mdx
#	astro/src/content/docs/get-started/quickstarts/web/quickstart-javascript-remix-web.mdx
#	astro/src/content/docs/get-started/quickstarts/web/quickstart-php-laravel-web.mdx
#	astro/src/content/docs/get-started/quickstarts/web/quickstart-php-web.mdx
#	astro/src/content/docs/get-started/quickstarts/web/quickstart-python-django-web.mdx
#	astro/src/content/docs/get-started/quickstarts/web/quickstart-ruby-rails-web.mdx
#	astro/src/content/docs/get-started/run-in-the-cloud/github-actions.mdx
#	astro/src/content/docs/get-started/start-here/step-4.mdx
#	astro/src/content/docs/get-started/use-cases/api-consents-platform.mdx
#	astro/src/content/docs/lifecycle/authenticate-users/integrations/oidc/salesforce.mdx
#	astro/src/content/docs/lifecycle/authenticate-users/integrations/saml/aiven.mdx
#	astro/src/content/docs/lifecycle/manage-users/user-actions.mdx
#	astro/src/content/docs/lifecycle/migrate-users/framework-specific/passportjs.mdx
#	astro/src/content/docs/lifecycle/migrate-users/framework-specific/rails.mdx
#	astro/src/content/docs/lifecycle/migrate-users/provider-specific/firebase.mdx
#	astro/src/content/docs/lifecycle/migrate-users/provider-specific/supabase.mdx
#	astro/src/content/docs/lifecycle/migrate-users/scim/scim-sdk.mdx
#	astro/src/content/docs/lifecycle/register-users/anonymous-user.mdx
# Conflicts:
#	astro/src/content/docs/lifecycle/authenticate-users/passwordless/magic-links.mdx
# Conflicts:
#	astro/src/content/blog/identity-verification-before-registration.mdx
#	astro/src/content/docs/extend/examples/5-minute-intro/5-minute-fastpath.mdx
#	astro/src/content/docs/get-started/run-in-the-cloud/cloud.mdx
#	astro/src/content/docs/lifecycle/authenticate-users/identity-providers/enterprise/okta-samlv2-idp-initiated.mdx
#	astro/src/content/docs/lifecycle/authenticate-users/integrations/saml/tableau-cloud.mdx
#	astro/src/content/docs/lifecycle/migrate-users/provider-specific/_final-destination.mdx
#	astro/src/content/docs/lifecycle/migrate-users/provider-specific/_verify-import.mdx
… MDX files (#3)

* fix: correct InlineField/InlineFieldValue usage per CONTRIBUTING.md guidelines

- Move colon outside <InlineField> tags (51 instances across 18 files)
- Replace <InlineFieldValue>true/false/True/False</InlineFieldValue> with backticks per
  guideline L122 (271 boolean occurrences across 101 files)
- Replace <InlineFieldValue>OR/AND</InlineFieldValue> with backticks (1 occurrence)
- Move period/punctuation outside <InlineField> tags (4 instances)
- Replace <InlineField>Enabled</InlineField> with <Breadcrumb>Enabled</Breadcrumb>
  for toggle/switch/checkbox labels per guideline L121 (29 occurrences, 21 files)
- Replace other explicit toggle/checkbox InlineField labels with Breadcrumb:
  Debug enabled, Refresh token, Enable JWT refresh, Generate refresh tokens,
  Enabled grants, Captcha Settings, Self service registration
- Replace event name programmatic identifiers with backticks:
  user.login.success, user.create.complete, user.email.update,
  user.update.complete, user.login.new-device
- Fix Required toggle labels to Breadcrumb in basic-registration-forms and
  identity-pre-verification files

Agent-Logs-Url: https://github.com/sonderformat-llc/fusionauth-site/sessions/e831fec9-c3e6-4313-a869-c606ed1011fa

Co-authored-by: Aaron-Ritter <12079732+Aaron-Ritter@users.noreply.github.com>

* fix: revert incorrect boolean InlineFieldValue→backtick change and add InlineField for field names

- Phase 1 (revert): Restore <InlineFieldValue>true/false</InlineFieldValue> back from `true`/`false`
  in 95 files (268 line reversions using git diff)
- Phase 2 (enhance): Convert backtick-wrapped identifiers adjacent to <InlineFieldValue>
  to <InlineField> in the same changed files (118 line changes)
- Phase 3 (broader): Extend fix to all .mdx files - lines containing <InlineField>/<InlineFieldValue>
  that still had `true`/`false` backticks also converted (21 additional files)
- Manual corrections: `development`/`production` table values → <InlineFieldValue> (not InlineField),
  `Disabled`/`Pending` reason strings → <InlineFieldValue>,
  `Universal` toggle label → <Breadcrumb>

Agent-Logs-Url: https://github.com/sonderformat-llc/fusionauth-site/sessions/30177591-95ec-412c-b54f-ea94553af4d5

Co-authored-by: Aaron-Ritter <12079732+Aaron-Ritter@users.noreply.github.com>

* fix: correct remaining 3 InlineField/InlineFieldValue mismatches found by comprehensive scan

- blog/how-to-set-up-single-sign-on-between-fusionauth-joomla.mdx: `Site` source value → <InlineFieldValue>Site</InlineFieldValue>
- blog/single-sign-on-with-discord.mdx: `sub` source value → <InlineFieldValue>sub</InlineFieldValue>
- blog/using-fusionauth-with-cockroachdb.mdx: `x-forwarded-proto` field name → <InlineField>x-forwarded-proto</InlineField>

Agent-Logs-Url: https://github.com/sonderformat-llc/fusionauth-site/sessions/19a23508-5d12-4985-b04e-56457a83b604

Co-authored-by: Aaron-Ritter <12079732+Aaron-Ritter@users.noreply.github.com>

* fix: InlineField/InlineFieldValue/Breadcrumb fixes in 24 MDX files from comprehensive audit

Agent-Logs-Url: https://github.com/sonderformat-llc/fusionauth-site/sessions/fc026937-6826-440c-bdde-c4739b8a99d4

Co-authored-by: Aaron-Ritter <12079732+Aaron-Ritter@users.noreply.github.com>

* fix: correct InlineField/InlineFieldValue usage per PR review comments

Agent-Logs-Url: https://github.com/sonderformat-llc/fusionauth-site/sessions/338badd8-08dd-4cee-9e38-f823ec54359f

Co-authored-by: Aaron-Ritter <12079732+Aaron-Ritter@users.noreply.github.com>

* Fix Required/NotRequired as InlineFieldValue in endpoints.mdx

Agent-Logs-Url: https://github.com/sonderformat-llc/fusionauth-site/sessions/84721ea2-edde-43ee-818c-e5fab9720375

Co-authored-by: Aaron-Ritter <12079732+Aaron-Ritter@users.noreply.github.com>

* Fix incorrect InlineField/InlineFieldValue usage per review feedback

Agent-Logs-Url: https://github.com/sonderformat-llc/fusionauth-site/sessions/31563a2c-6f5d-4b00-96d1-768d8c1b5bf9

Co-authored-by: Aaron-Ritter <12079732+Aaron-Ritter@users.noreply.github.com>

* Fix missed InlineField/InlineFieldValue instances in 9 flagged files

Agent-Logs-Url: https://github.com/sonderformat-llc/fusionauth-site/sessions/301a70ea-5697-43e4-b9c2-7c8fa9f42371

Co-authored-by: Aaron-Ritter <12079732+Aaron-Ritter@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Aaron-Ritter <12079732+Aaron-Ritter@users.noreply.github.com>
@Aaron-Ritter Aaron-Ritter changed the title feat(InlineFieldValue): add tag for values of InlineField refactor: handle key value formating with mdx and use Breadcrumb for all navigation Apr 25, 2026
@Aaron-Ritter Aaron-Ritter marked this pull request as ready for review April 25, 2026 20:08
@Aaron-Ritter Aaron-Ritter requested a review from a team as a code owner April 25, 2026 20:08
@Aaron-Ritter Aaron-Ritter requested review from nathan-contino and removed request for a team April 25, 2026 20:08
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.

2 participants