docs: add nodejs-nestjs to introduction.mdx (#7137)

* docs: update introduction.mdx

Add Node.js NestJS framework to the list.

* add node to sidebars

---------

Co-authored-by: Max Peintner <max@caos.ch>
This commit is contained in:
Thomas Faust
2024-01-15 13:48:25 +01:00
committed by GitHub
parent 09288c7826
commit cdc4a68443
2 changed files with 93 additions and 98 deletions

View File

@@ -174,9 +174,9 @@ Our examples cover a range of programming languages and frameworks, so no matter
<td> <td>
<img src="/docs/img/tech/nodejs.svg" alt="node"/> <img src="/docs/img/tech/nodejs.svg" alt="node"/>
</td> </td>
<td>NodeJS</td> <td>Node.js NestJS API</td>
<td></td> <td><a href="https://github.com/ehwplus/zitadel-nodejs-nestjs" target="_blank"><i class="lab la-github"></i></a></td>
<td></td> <td><a href="./secure-api/nodejs-nestjs">Guide</a></td>
<td></td> <td></td>
</tr> </tr>
<tr> <tr>

View File

@@ -25,7 +25,8 @@ module.exports = {
items: [ items: [
"examples/secure-api/go", "examples/secure-api/go",
"examples/secure-api/python-flask", "examples/secure-api/python-flask",
"examples/secure-api/dot-net" "examples/secure-api/dot-net",
"examples/secure-api/nodejs-nestjs",
], ],
collapsed: true, collapsed: true,
}, },
@@ -38,15 +39,15 @@ module.exports = {
items: [ items: [
"examples/introduction", "examples/introduction",
{ {
type: 'link', type: "link",
label: 'Frontend', // The link label label: "Frontend", // The link label
href: '/examples/introduction#frontend', // The internal path href: "/examples/introduction#frontend", // The internal path
}, },
{ {
type: 'link', type: "link",
label: 'Backend', // The link label label: "Backend", // The link label
href: '/examples/introduction#backend', // The internal path href: "/examples/introduction#backend", // The internal path
} },
], ],
collapsed: true, collapsed: true,
}, },
@@ -128,9 +129,9 @@ module.exports = {
"guides/migrate/sources/zitadel", "guides/migrate/sources/zitadel",
"guides/migrate/sources/auth0", "guides/migrate/sources/auth0",
"guides/migrate/sources/keycloak", "guides/migrate/sources/keycloak",
] ],
}, },
] ],
}, },
{ {
type: "category", type: "category",
@@ -151,8 +152,7 @@ module.exports = {
type: "generated-index", type: "generated-index",
title: "Authenticate Human Users", title: "Authenticate Human Users",
slug: "guides/integrate/human-users", slug: "guides/integrate/human-users",
description: description: "How to authenticate human users with OpenID Connect",
"How to authenticate human users with OpenID Connect",
}, },
items: [ items: [
"guides/integrate/login-users", "guides/integrate/login-users",
@@ -197,9 +197,7 @@ module.exports = {
type: "category", type: "category",
label: "Role Management", label: "Role Management",
collapsed: true, collapsed: true,
items: [ items: ["guides/integrate/retrieve-user-roles"],
"guides/integrate/retrieve-user-roles"
],
}, },
{ {
type: "category", type: "category",
@@ -209,8 +207,7 @@ module.exports = {
title: "Build your own Login UI", title: "Build your own Login UI",
slug: "/guides/integrate/login-ui", slug: "/guides/integrate/login-ui",
description: description:
"In the following guides you will learn how to create your own login UI with our APIs. The different scenarios like username/password, external identity provider, etc. will be shown." "In the following guides you will learn how to create your own login UI with our APIs. The different scenarios like username/password, external identity provider, etc. will be shown.",
}, },
collapsed: true, collapsed: true,
items: [ items: [
@@ -221,7 +218,7 @@ module.exports = {
"guides/integrate/login-ui/select-account", "guides/integrate/login-ui/select-account",
"guides/integrate/login-ui/password-reset", "guides/integrate/login-ui/password-reset",
"guides/integrate/login-ui/logout", "guides/integrate/login-ui/logout",
"guides/integrate/login-ui/oidc-standard" "guides/integrate/login-ui/oidc-standard",
], ],
}, },
{ {
@@ -229,11 +226,11 @@ module.exports = {
label: "Configure Identity Providers", label: "Configure Identity Providers",
link: { link: {
type: "generated-index", type: "generated-index",
title: "Let Users Login with Preferred Identity Provider in ZITADEL", title:
"Let Users Login with Preferred Identity Provider in ZITADEL",
slug: "/guides/integrate/identity-providers", slug: "/guides/integrate/identity-providers",
description: description:
"In the following guides you will learn how to configure and setup your preferred external identity provider in ZITADEL.", "In the following guides you will learn how to configure and setup your preferred external identity provider in ZITADEL.",
}, },
collapsed: true, collapsed: true,
items: [ items: [
@@ -255,9 +252,9 @@ module.exports = {
collapsed: true, collapsed: true,
items: [ items: [
{ {
type: 'link', type: "link",
label: 'Authenticate Service Users', label: "Authenticate Service Users",
href: '/guides/integrate/serviceusers', href: "/guides/integrate/serviceusers",
}, },
"guides/integrate/access-zitadel-apis", "guides/integrate/access-zitadel-apis",
"guides/integrate/access-zitadel-system-api", "guides/integrate/access-zitadel-system-api",
@@ -282,48 +279,47 @@ module.exports = {
slug: "/guides/integrate/services", slug: "/guides/integrate/services",
description: description:
"With the guides in this section you will learn how to integrate ZITADEL with your services.", "With the guides in this section you will learn how to integrate ZITADEL with your services.",
}, },
collapsed: true, collapsed: true,
items: [ items: [
{ {
type: 'autogenerated', type: "autogenerated",
dirName: 'guides/integrate/services', dirName: "guides/integrate/services",
}, },
{ {
type: 'link', type: "link",
label: 'Bold BI (boldbi.com)', label: "Bold BI (boldbi.com)",
href: 'https://support.boldbi.com/kb/article/13708/how-to-configure-zitadel-oauth-login-in-bold-bi', href: "https://support.boldbi.com/kb/article/13708/how-to-configure-zitadel-oauth-login-in-bold-bi",
}, },
{ {
type: 'link', type: "link",
label: 'Cloudflare workers', label: "Cloudflare workers",
href: 'https://zitadel.com/blog/increase-spa-security-with-cloudflare-workers', href: "https://zitadel.com/blog/increase-spa-security-with-cloudflare-workers",
}, },
{ {
type: 'link', type: "link",
label: 'Firezone (firezone.dev)', label: "Firezone (firezone.dev)",
href: 'https://www.firezone.dev/docs/authenticate/oidc/zitadel', href: "https://www.firezone.dev/docs/authenticate/oidc/zitadel",
}, },
{ {
type: 'link', type: "link",
label: 'Nextcloud', label: "Nextcloud",
href: 'https://zitadel.com/blog/zitadel-as-sso-provider-for-selfhosting', href: "https://zitadel.com/blog/zitadel-as-sso-provider-for-selfhosting",
}, },
{ {
type: 'link', type: "link",
label: 'Netbird (netbird.io)', label: "Netbird (netbird.io)",
href: 'https://docs.netbird.io/selfhosted/identity-providers', href: "https://docs.netbird.io/selfhosted/identity-providers",
}, },
{ {
type: 'link', type: "link",
label: 'Psono (psono.com)', label: "Psono (psono.com)",
href: 'https://doc.psono.com/admin/configuration/oidc-zitadel.html', href: "https://doc.psono.com/admin/configuration/oidc-zitadel.html",
}, },
{ {
type: 'link', type: "link",
label: 'Zoho Desk (zoho.com)', label: "Zoho Desk (zoho.com)",
href: 'https://help.zoho.com/portal/en/kb/desk/user-management-and-security/data-security/articles/setting-up-saml-single-signon-for-help-center#Zitadel_IDP', href: "https://help.zoho.com/portal/en/kb/desk/user-management-and-security/data-security/articles/setting-up-saml-single-signon-for-help-center#Zitadel_IDP",
}, },
], ],
}, },
@@ -336,18 +332,17 @@ module.exports = {
slug: "/guides/integrate/tools", slug: "/guides/integrate/tools",
description: description:
"With the guides in this section you will learn how to integrate ZITADEL with your favorite tools.", "With the guides in this section you will learn how to integrate ZITADEL with your favorite tools.",
}, },
collapsed: true, collapsed: true,
items: [ items: [
{ {
type: 'link', type: "link",
label: 'Argo CD', label: "Argo CD",
href: 'https://argo-cd.readthedocs.io/en/latest/operator-manual/user-management/zitadel/', href: "https://argo-cd.readthedocs.io/en/latest/operator-manual/user-management/zitadel/",
}, },
"guides/integrate/tools/apache2", "guides/integrate/tools/apache2",
"guides/integrate/authenticated-mongodb-charts", "guides/integrate/authenticated-mongodb-charts",
"examples/identity-proxy/oauth2-proxy" "examples/identity-proxy/oauth2-proxy",
], ],
}, },
], ],
@@ -398,7 +393,7 @@ module.exports = {
"concepts/features/actions", "concepts/features/actions",
"concepts/features/audit-trail", "concepts/features/audit-trail",
"concepts/features/selfservice", "concepts/features/selfservice",
] ],
}, },
{ {
type: "category", type: "category",
@@ -418,7 +413,7 @@ module.exports = {
"concepts/eventstore/implementation", "concepts/eventstore/implementation",
], ],
}, },
] ],
}, },
{ {
type: "category", type: "category",
@@ -428,26 +423,26 @@ module.exports = {
"support/software-release-cycles-support", "support/software-release-cycles-support",
"support/troubleshooting", "support/troubleshooting",
{ {
type: 'link', type: "link",
label: 'Support Service Descriptions', label: "Support Service Descriptions",
href: '/legal/service-description/support-services', href: "/legal/service-description/support-services",
}, },
{ {
type: 'category', type: "category",
label: "Technical Advisory", label: "Technical Advisory",
link: { link: {
type: 'doc', type: "doc",
id: 'support/technical_advisory', id: "support/technical_advisory",
}, },
collapsed: true, collapsed: true,
items: [ items: [
{ {
type: 'autogenerated', type: "autogenerated",
dirName: 'support/advisory', dirName: "support/advisory",
}, },
], ],
}, },
] ],
}, },
], ],
apis: [ apis: [
@@ -460,8 +455,7 @@ module.exports = {
type: "generated-index", type: "generated-index",
title: "Core Resources", title: "Core Resources",
slug: "/apis/resources/", slug: "/apis/resources/",
description: description: "Resource based API definitions",
"Resource based API definitions",
}, },
items: [ items: [
{ {
@@ -473,7 +467,6 @@ module.exports = {
slug: "/apis/resources/auth", slug: "/apis/resources/auth",
description: description:
"The authentication API (aka Auth API) is used for all operations on the currently logged in user. The user id is taken from the sub claim in the token.", "The authentication API (aka Auth API) is used for all operations on the currently logged in user. The user id is taken from the sub claim in the token.",
}, },
items: require("./docs/apis/resources/auth/sidebar.js"), items: require("./docs/apis/resources/auth/sidebar.js"),
}, },
@@ -577,7 +570,7 @@ module.exports = {
collapsed: true, collapsed: true,
items: ["apis/assets/assets"], items: ["apis/assets/assets"],
}, },
] ],
}, },
{ {
type: "category", type: "category",
@@ -617,12 +610,12 @@ module.exports = {
"apis/actions/complement-token", "apis/actions/complement-token",
"apis/actions/customize-samlresponse", "apis/actions/customize-samlresponse",
"apis/actions/objects", "apis/actions/objects",
] ],
}, },
{ {
type: "doc", type: "doc",
label: "gRPC Status Codes", label: "gRPC Status Codes",
id: "apis/statuscodes" id: "apis/statuscodes",
}, },
{ {
type: "category", type: "category",
@@ -631,9 +624,9 @@ module.exports = {
items: ["apis/observability/metrics", "apis/observability/health"], items: ["apis/observability/metrics", "apis/observability/health"],
}, },
{ {
type: 'link', type: "link",
label: 'Rate Limits (Cloud)', // The link label label: "Rate Limits (Cloud)", // The link label
href: '/legal/policies/rate-limit-policy', // The internal path href: "/legal/policies/rate-limit-policy", // The internal path
}, },
], ],
selfHosting: [ selfHosting: [
@@ -649,7 +642,7 @@ module.exports = {
"self-hosting/deploy/knative", "self-hosting/deploy/knative",
"self-hosting/deploy/kubernetes", "self-hosting/deploy/kubernetes",
"self-hosting/deploy/loadbalancing-example/loadbalancing-example", "self-hosting/deploy/loadbalancing-example/loadbalancing-example",
"self-hosting/deploy/troubleshooting/troubleshooting" "self-hosting/deploy/troubleshooting/troubleshooting",
], ],
}, },
{ {
@@ -683,7 +676,7 @@ module.exports = {
"self-hosting/manage/tls_modes", "self-hosting/manage/tls_modes",
"self-hosting/manage/database/database", "self-hosting/manage/database/database",
"self-hosting/manage/updating_scaling", "self-hosting/manage/updating_scaling",
"self-hosting/manage/usage_control" "self-hosting/manage/usage_control",
], ],
}, },
], ],
@@ -712,13 +705,14 @@ module.exports = {
type: "generated-index", type: "generated-index",
title: "Service description", title: "Service description",
slug: "/legal/service-description", slug: "/legal/service-description",
description: "Description of services and service levels for ZITADEL Cloud and Enterprise subscriptions.", description:
"Description of services and service levels for ZITADEL Cloud and Enterprise subscriptions.",
}, },
items: [ items: [
{ {
type: 'autogenerated', type: "autogenerated",
dirName: 'legal/service-description', dirName: "legal/service-description",
} },
], ],
}, },
{ {
@@ -729,16 +723,17 @@ module.exports = {
type: "generated-index", type: "generated-index",
title: "Policies", title: "Policies",
slug: "/legal/policies", slug: "/legal/policies",
description: "Policies and guidelines in addition to our terms of services.", description:
"Policies and guidelines in addition to our terms of services.",
}, },
items: [ items: [
{ {
type: 'autogenerated', type: "autogenerated",
dirName: 'legal/policies', dirName: "legal/policies",
}
]
}, },
] ],
},
],
}, },
], ],
}; };