Skip to content

Commit 04bd868

Browse files
committed
clean up ecosystem support matrix
1 parent 58166c5 commit 04bd868

File tree

5 files changed

+72
-67
lines changed

5 files changed

+72
-67
lines changed

README.md

Lines changed: 2 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,3 @@
1-
# Website
1+
# digitalcredentials.dev
22

3-
This website is built using [Docusaurus](https://docusaurus.io/), a modern static website generator.
4-
5-
### Installation
6-
7-
```
8-
$ yarn
9-
```
10-
11-
### Local Development
12-
13-
```
14-
$ yarn start
15-
```
16-
17-
This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.
18-
19-
### Build
20-
21-
```
22-
$ yarn build
23-
```
24-
25-
This command generates static content into the `build` directory and can be served using any static contents hosting service.
26-
27-
### Deployment
28-
29-
Using SSH:
30-
31-
```
32-
$ USE_SSH=true yarn deploy
33-
```
34-
35-
Not using SSH:
36-
37-
```
38-
$ GIT_USER=<Your GitHub username> yarn deploy
39-
```
40-
41-
If you are using GitHub pages for hosting, this command is a convenient way to build the website and push to the `gh-pages` branch.
3+
> Coming Soon

src/components/EcosystemSupportTable.js

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import React from 'react';
22
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
3+
import Link from '@docusaurus/Link';
34
import supportData from '../pages/ecosystem-support.json';
45
import styles from './EcosystemSupportTable.module.css';
56

@@ -71,10 +72,24 @@ export default function EcosystemSupportTable() {
7172
{textLegendItems.length > 0 && (
7273
<div className={styles.subLegend}>
7374
{textLegendItems.map((item, index) => (
74-
<span key={index} className={styles.legendItem}>
75+
<div key={index} className={styles.legendItem}>
7576
{item.superscript && <sup>{item.superscript}</sup>}
76-
{item.text}
77-
</span>
77+
{Array.isArray(item.text)
78+
? item.text.map((part, partIndex) => {
79+
if (typeof part === 'string') {
80+
return <React.Fragment key={partIndex}>{part}</React.Fragment>;
81+
}
82+
if (part.href) {
83+
return (
84+
<Link key={partIndex} to={part.href}>
85+
{part.text}
86+
</Link>
87+
);
88+
}
89+
return null;
90+
})
91+
: item.text}
92+
</div>
7893
))}
7994
</div>
8095
)}
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
import React from 'react';
2+
import Layout from '@theme/Layout';
3+
import EcosystemSupportTable from '@site/src/components/EcosystemSupportTable';
4+
import Heading from '@theme/Heading';
5+
6+
export default function EcosystemSupport() {
7+
return (
8+
<Layout
9+
title="Ecosystem Support"
10+
description="Browser and platform support for the Digital Credentials API.">
11+
<main className="container margin-vert--lg">
12+
<Heading as="h1">Ecosystem Support</Heading>
13+
<p>
14+
This page provides an overview of the support for the Digital Credentials API
15+
across different platforms and browsers.
16+
</p>
17+
<EcosystemSupportTable />
18+
</main>
19+
</Layout>
20+
);
21+
}

src/pages/ecosystem-support.json

Lines changed: 24 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -4,19 +4,19 @@
44
{
55
"platform": { "name": "Android", "icon": "fa-brands fa-android" },
66
"support": {
7-
"Chrome": [{ "icon": "fa-solid fa-check-circle", "text": "Presentation: v141", "color": "green", "iconPosition": "left" }, { "icon": "fa-solid fa-flask-vial", "text": "Issuance", "superscript": "1", "color": "grey", "iconPosition": "left" }],
8-
"Edge": [{ "icon": "fa-solid fa-question", "text": "Unknown", "color": "grey" }],
7+
"Chrome": [{ "icon": "fa-solid fa-check-circle", "text": "Presentation (v141+)", "color": "green", "iconPosition": "left" }, { "icon": "fa-solid fa-flask-vial", "text": "Issuance", "color": "grey", "iconPosition": "left" }],
8+
"Edge": [{ "icon": "fa-solid fa-code-pull-request", "text": "Planned", "color": "grey" }],
99
"Firefox": [{ "icon": "fa-solid fa-times-circle", "text": "Not Supported", "color": "grey" }],
10-
"Safari": null
10+
"Safari": [{ "text": "n/a" }]
1111
}
1212
},
1313
{
1414
"platform": { "name": "Chrome OS", "icon": "fa-brands fa-chrome" },
1515
"support": {
16-
"Chrome": [{ "icon": "fa-solid fa-check-circle", "text": "Presentation: v141", "color": "green", "iconPosition": "left" }, { "icon": "fa-solid fa-flask-vial", "text": "Issuance", "color": "grey", "iconPosition": "left" }],
16+
"Chrome": [{ "icon": "fa-solid fa-check-circle", "text": "Presentation (v141+)", "color": "green", "iconPosition": "left" }, { "icon": "fa-solid fa-flask-vial", "text": "Issuance", "color": "grey", "iconPosition": "left" }],
1717
"Edge": [{ "text": "See Android", "color": "grey", "superscript": "2" }],
1818
"Firefox": [{ "text": "See Android", "color": "grey", "superscript": "2" }],
19-
"Safari": null
19+
"Safari": [{ "text": "n/a" }]
2020
}
2121
},
2222
{
@@ -25,34 +25,34 @@
2525
"Chrome": [{ "text": "See Safari", "superscript": "1" }],
2626
"Edge": [{ "text": "See Safari", "superscript": "1"}],
2727
"Firefox": [{ "text": "See Safari", "superscript": "1"}],
28-
"Safari": [{ "icon": "fa-solid fa-check-circle", "text": "Presentation: OS 26", "color": "green", "iconPosition": "left", "superscript": "3" }, { "icon": "fa-solid fa-question", "text": "Issuance: Unknown", "color": "grey", "iconPosition": "left" }]
28+
"Safari": [{ "icon": "fa-solid fa-check-circle", "text": "Presentation (OS 26+)", "color": "green", "iconPosition": "left", "superscript": "3" }, { "icon": "fa-solid fa-question", "text": "Issuance: Unknown", "color": "grey", "iconPosition": "left" }]
2929
}
3030
},
3131
{
3232
"platform": { "name": "macOS", "icon": "fa-brands fa-apple" },
3333
"support": {
34-
"Chrome": [{ "icon": "fa-solid fa-check-circle", "text": "Presentation: v141", "color": "green", "iconPosition": "left" }, { "icon": "fa-solid fa-flask-vial", "text": "Issuance", "superscript": "1", "color": "grey", "iconPosition": "left" }],
35-
"Edge": [{ "icon": "fa-solid fa-question", "text": "Unknown", "color": "grey" }],
34+
"Chrome": [{ "icon": "fa-solid fa-check-circle", "text": "Presentation (v141+)", "color": "green", "iconPosition": "left" }, { "icon": "fa-solid fa-flask-vial", "text": "Issuance", "color": "grey", "iconPosition": "left" }],
35+
"Edge": [{ "icon": "fa-solid fa-code-pull-request", "text": "Planned", "color": "grey" }],
3636
"Firefox": [{ "icon": "fa-solid fa-times-circle", "text": "Not Supported", "color": "grey" }],
37-
"Safari": [{ "icon": "fa-solid fa-check-circle", "text": "Presentation: OS 26", "color": "green", "iconPosition": "left", "superscript": "3" }, { "icon": "fa-solid fa-question", "text": "Issuance: Unknown", "color": "grey", "iconPosition": "left" }]
37+
"Safari": [{ "icon": "fa-solid fa-check-circle", "text": "Presentation (OS 26+)", "color": "green", "iconPosition": "left", "superscript": "3" }, { "icon": "fa-solid fa-question", "text": "Issuance: Unknown", "color": "grey", "iconPosition": "left" }]
3838
}
3939
},
4040
{
4141
"platform": { "name": "Ubuntu", "icon": "fa-brands fa-ubuntu" },
4242
"support": {
43-
"Chrome": [{ "icon": "fa-solid fa-check-circle", "text": "Presentation: v141", "color": "green", "iconPosition": "left" }, { "icon": "fa-solid fa-flask-vial", "text": "Issuance", "superscript": "1", "color": "grey", "iconPosition": "left" }],
44-
"Edge": [{ "icon": "fa-solid fa-question", "text": "Unknown", "color": "grey" }],
43+
"Chrome": [{ "icon": "fa-solid fa-check-circle", "text": "Presentation (v141+)", "color": "green", "iconPosition": "left" }, { "icon": "fa-solid fa-flask-vial", "text": "Issuance", "color": "grey", "iconPosition": "left" }],
44+
"Edge": [{ "icon": "fa-solid fa-code-pull-request", "text": "Planned", "color": "grey" }],
4545
"Firefox": [{ "icon": "fa-solid fa-times-circle", "text": "Not Supported", "color": "grey" }],
46-
"Safari": null
46+
"Safari": [{ "text": "n/a" }]
4747
}
4848
},
4949
{
5050
"platform": { "name": "Windows", "icon": "fa-brands fa-windows" },
5151
"support": {
52-
"Chrome": [{ "icon": "fa-solid fa-check-circle", "text": "Presentation: v141", "color": "green", "iconPosition": "left" }, { "icon": "fa-solid fa-flask-vial", "text": "Issuance", "superscript": "1", "color": "grey", "iconPosition": "left" }],
53-
"Edge": [{ "icon": "fa-solid fa-question", "text": "Unknown", "color": "grey" }],
52+
"Chrome": [{ "icon": "fa-solid fa-check-circle", "text": "Presentation (v141+)", "color": "green", "iconPosition": "left" }, { "icon": "fa-solid fa-flask-vial", "text": "Issuance", "color": "grey", "iconPosition": "left" }],
53+
"Edge": [{ "icon": "fa-solid fa-code-pull-request", "text": "Planned", "color": "grey" }],
5454
"Firefox": [{ "icon": "fa-solid fa-times-circle", "text": "Not Supported", "color": "grey" }],
55-
"Safari": null
55+
"Safari": [{ "text": "n/a" }]
5656
}
5757
}
5858
],
@@ -66,7 +66,15 @@
6666
"superscripts": [
6767
{ "superscript": "1", "text": "In most cases, all browsers on iOS/iPadOS use Safari's rendering engine (WebKit)" },
6868
{ "superscript": "2", "text": "Other browsers run as Android apps on Chrome OS"},
69-
{ "superscript": "3", "text": "Limited protocol support" }
69+
{
70+
"superscript": "3",
71+
"text": [
72+
"Limited protocol support, see ",
73+
{ "text": "iOS", "href": "/docs/references/platforms/ios/" },
74+
" | ",
75+
{ "text": "macOS", "href": "/docs/references/platforms/macos/" }
76+
]
77+
}
7078
]
7179
}
7280
}

src/pages/ecosystem-support.mdx

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -17,14 +17,13 @@ import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
1717
<EcosystemSupportTable />
1818
</TabItem>
1919
<TabItem value="app-pres-req" label="Digital Credentials API (Native)">
20-
## Android
21-
Digital Credentials are requested via Android's Credential Manager API.
22-
23-
Support is currently available in [CredentialManager](https://developer.android.com/jetpack/androidx/releases/credentials) 1.5.0-alpha05. See the [GetDigitalCredentialOption](https://developer.android.com/reference/kotlin/androidx/credentials/GetDigitalCredentialOption) class for details.
24-
25-
The Android API mirrors the syntax of the DigitalCredential object defined in the web specification.
20+
21+
> Coming Soon
22+
2623
</TabItem>
27-
<TabItem value="app-wallet" label="App Platform Wallet APIs">
28-
Coming Soon.
24+
<TabItem value="app-wallet" label="Credential Manager APIs">
25+
26+
> Coming Soon
27+
2928
</TabItem>
3029
</Tabs>

0 commit comments

Comments
 (0)