orange-opensource/accessibility-statement-lib-ios/usage

Claude Code and agent skill by orange-opensource/accessibility-statement-lib-ios

Trust tier 3
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

Explains how to integrate and use the DeclarationAccessibility SwiftUI library (StatementView) in an iOS/iPadOS app, including local/remote detail pages, webview vs browser display, themes, and OUDS integration. Use this when a developer asks how to add, configure, or display an accessibility statement view in a Swift/SwiftUI app.

Install

npx vskill@latest install orange-opensource/accessibility-statement-lib-ios/usage

SKILL.md

Using the Accessibility Statement Library (DeclarationAccessibility)

This skill explains how to integrate the DeclarationAccessibility Swift Package into an iOS/iPadOS SwiftUI app to display an accessibility statement generated by La va11ydette.

Import the library

swift
import DeclarationAccessibility

The package must be added as a Swift Package dependency (see Package.swift of this repo for the package name/URL).

Core concept

The library exposes a single SwiftUI view, StatementView, which:

  • Parses an XML file (generated by La va11ydette) describing the compliance statement and scores.
  • Optionally links to a detailed HTML page, which can be local (bundled) or remote, and displayed in a webview or opened in the system browser.
  • Supports theming (orange, sosh, innovationCup) or a custom OUDSTheme if using the OUDS library.

Basic setup (local HTML detail page)

swift
import DeclarationAccessibility
import SwiftUI
struct AccessibilityStatementView: View {
let detailsPageURL: URL
init() {
guard let detailsPageURL = Bundle.main.url(forResource: "accessibility_detail", withExtension: "html") else {
fatalError("Unable to find accessibility_detail.html in resources")
}
self.detailsPageURL = detailsPageURL
}
var body: some View {
VStack {
// "accessibility_result" XML file must be in the app bundle
StatementView(xmlFileName: "accessibility_result", theme: .orange, localURL: detailsPageURL.absoluteString)
}
}
}

Requirements:

  • accessibility_result.xml must be included as a resource in the app bundle (root XML from La va11ydette).
  • accessibility_detail.html (optional) must also be bundled if used for local details.

Using a remote/external detail page

swift
// Displayed inside the app in a webview
StatementView(xmlFile: "accessibility_result", theme: .orange, remoteUrl: "https://a11y-guidelines.orange.com/fr/", useWebView: true)
// Displayed outside the app, opened in the system browser (default when useWebView is omitted)
StatementView(xmlFile: "accessibility_result", theme: .orange, remoteUrl: "https://a11y-guidelines.orange.com/fr/")

Using the Orange Unified Design System (OUDS)

If the app already depends on OUDS iOS, pass an OUDSTheme object instead of the built-in theme enum to inherit the app's design system automatically:

swift
import DeclarationAccessibility
import OUDSSwiftUI
import SwiftUI
struct AccessibilityStatementPage: View {
let detailsPageURL: URL
@Environment(\.theme) var theme
init() {
guard let detailsPageURL = Bundle.main.url(forResource: "accessibility_detail", withExtension: "html") else {
OL.fatal("Unable to find accessibility_detail.html in resources")
}
self.detailsPageURL = detailsPageURL
}
var body: some View {
VStack {
StatementView(xmlFile: "accessibility_result", localUrl: detailsPageURL.absoluteString, theme: theme)
}
}
}

This also works with a remote URL:

swift
StatementView(xmlFile: "accessibility_result", remoteUrl: "https://a11y-guidelines.orange.com/fr/", useWebView: true, theme: someOudsTheme)

Decision guide

NeedParameter to use
XML statement file bundled in the appxmlFile / xmlFileName (file name without extension, in app bundle)
Detail page bundled locallylocalUrl / localURL (absolute string URL to the local HTML file)
Detail page hosted externallyremoteUrl (absolute URL string)
Show remote detail page inside the appuseWebView: true
Open remote detail page in system browseruseWebView: false or omit it
Built-in themetheme: .orange, .sosh, or .innovationCup
App-wide OUDS themetheme: someOudsTheme (an OUDSTheme instance)

Notes and constraints

  • Minimum deployment target: iOS 15.0 / iPadOS 15.0.
  • The XML file must be generated by La va11ydette to match the expected schema.
  • Do not mix localUrl and remoteUrl on the same StatementView call — choose one detail source.
  • See the repository README.md and MIGRATION.md for version-specific API changes.

Security

  • Security scanPassed, 90 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

7-day trend score
0

Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/orange-opensource/accessibility-statement-lib-ios/usage/badge)](https://verified-skill.com/skills/orange-opensource/accessibility-statement-lib-ios/usage)

Something wrong with this skill or its page? Tell us.