mirror of
https://github.com/andwati/zitadel.git
synced 2026-10-18 05:52:51 +00:00
## Todos for release - [x] Configure Env in docs project on vercel - [x] Configure Root Path in the docs project on vercel - [ ] Remove old CSP https://github.com/zitadel/website/pull/1592 ## What we did This pull request migrates the project documentation from the old `docs/` directory to the new `apps/docs/` directory, introduces a new documentation system built with Next.js and Fumadocs, and updates all relevant references, configuration files, and documentation to reflect this change. It also adds new configuration and ignore files for the new documentation app, updates CI and linting to exclude the new docs from certain checks, and revises the contributing guidelines accordingly. **Documentation System Migration and New Docs App** * Migrated all documentation from `docs/` to `apps/docs/`, and updated all references in `README.md`, `CONTRIBUTING.md`, and other files to point to the new location. [[1]](diffhunk://#diff-eca12c0a30e25b4b46522ebf89465a03ba72a03f540796c979137931d8f92055L585-L640) [[2]](diffhunk://#diff-eca12c0a30e25b4b46522ebf89465a03ba72a03f540796c979137931d8f92055L660-R607) [[3]](diffhunk://#diff-eca12c0a30e25b4b46522ebf89465a03ba72a03f540796c979137931d8f92055L740-R687) [[4]](diffhunk://#diff-b335630551682c19a781afebcf4d07bf978fb1f8ac04c6bf87428ed5106870f5L2-R3) [[5]](diffhunk://#diff-b335630551682c19a781afebcf4d07bf978fb1f8ac04c6bf87428ed5106870f5L30-R30) * Added a new Next.js/Fumadocs-based documentation app under `apps/docs/`, including core app files, layouts, routing, search API, and a comprehensive `README.md` with development and contribution instructions. [[1]](diffhunk://#diff-5a1b07344a2c1b4d3f37b23ff1388b62cd9f57dea3c1cd23d8a0412b7602b132R1-R74) [[2]](diffhunk://#diff-462b9ad1eabbb7d1c29bb9c36e4931eb180fd7190900e6d2babf8f4d66ad1c28R1-R39) [[3]](diffhunk://#diff-e16ae25660ded787b10ac35dea96d5ecaacf895dae0afc8a9bd4382dc79a8c87R1-R7) [apps/docs/app/[[...slug]]/layout.tsxR1-R81](diffhunk://#diff-59e08acde4e805b7aeccef1dcf98f1d71dfc550777e6b9402085cee0e9fa4e0aR1-R81), [apps/docs/app/[[...slug]]/page.tsxR1-R79](diffhunk://#diff-e5df3f80d0fa01e12d63d81f29c57a9d14e846c78fd3beabb2ef768e38fd9580R1-R79), [[4]](diffhunk://#diff-389b34918e040cacaa87cd7201ffa462cc2b0b716736f537e3d3c660ac69353bR1-R7) [[5]](diffhunk://#diff-d3b03416d1c457b19f1c27b26f2db741412df841b875c26ccadc36e4522247f4R1-R29) [[6]](diffhunk://#diff-c8fb8339570a5305809be7c618e14705fd86390dc278e6ce8ba224a7bc8b0c3cR1-R25) **Configuration and Tooling Updates** * Updated `.github/workflows/codeql.yml`, `.golangci.yaml`, and `.github/dependabot.yml` to properly handle the new docs app: excluded `apps/docs` from certain checks, added npm dependency updates for the docs app, and excluded generated content. [[1]](diffhunk://#diff-12783128521e452af0cfac94b99b8d250413c516ec71fe6d97dbea666ff7ba27L8-R14) [[2]](diffhunk://#diff-9917ddc9f1c3304218f7269265b746d997c5c0615478177b5fceecd33ef47cb5R5-R6) [[3]](diffhunk://#diff-9917ddc9f1c3304218f7269265b746d997c5c0615478177b5fceecd33ef47cb5R126-R129) [[4]](diffhunk://#diff-dd4fbda47e51f1e35defb9275a9cd9c212ecde0b870cba89ddaaae65c5f3cd28R89-R106) * Updated `.devcontainer/devcontainer.json` to use the latest Go 1.25.3 version for consistency. **Licensing and Miscellaneous** * Added `apps/docs/` to the list of licensed directories in `LICENSING.md`. These changes ensure the documentation is now maintained in a modern, scalable system and all project tooling is updated to support the new structure. --------- Co-authored-by: Federico Coppede <[email protected]>
149 lines
3.6 KiB
Plaintext
149 lines
3.6 KiB
Plaintext
---
|
|
title: Modules
|
|
---
|
|
|
|
ZITADEL provides the following modules.
|
|
|
|
## HTTP
|
|
|
|
This module provides functionality to call REST APIs.
|
|
|
|
### Import
|
|
|
|
```js
|
|
let http = require('zitadel/http')
|
|
```
|
|
|
|
### `fetch()` function
|
|
|
|
This function allows to call HTTP servers. The function does NOT fulfil the [Fetch API specification](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API).
|
|
|
|
#### Parameters
|
|
|
|
- `url` *string*
|
|
- `options`
|
|
**Optional**, containing custom settings that you want to apply to the request.
|
|
- `headers`
|
|
Overwrites the default headers. One of the following types
|
|
- *map[string] string*
|
|
The value is split into separate values after each comma `,`.
|
|
- *map[string] Array of string*
|
|
The value is a string array
|
|
- default:
|
|
- `Content-Type`: `application/json`
|
|
- `Accept`: `application/json`
|
|
- `method`
|
|
The request method. Allowed values are `GET`, `POST`, `PUT`, `DELETE`
|
|
- `body` *Object*
|
|
JSON representation
|
|
|
|
#### Response
|
|
|
|
If the request was invalid, an error will be thrown, otherwise a Response object will be returned.
|
|
|
|
The object has the following fields and methods:
|
|
|
|
- `status` *number*
|
|
Status code of response
|
|
- `body` *string*
|
|
Return value
|
|
- `json()` *Object*
|
|
Returns the body as JSON object, or throws an error if the body is not a json object.
|
|
- `text()` *string*
|
|
Returns the body
|
|
|
|
### Example
|
|
|
|
```js reference
|
|
https://github.com/zitadel/actions/blob/main/examples/make_api_call.js#L10-L20
|
|
```
|
|
|
|
## Log
|
|
|
|
The log module provides you with the functionality to log to stdout.
|
|
|
|
### Import
|
|
|
|
```js
|
|
let logger = require("zitadel/log")
|
|
```
|
|
|
|
### `log()`, `warn()`, `error()` function
|
|
|
|
The logger offers three distinct log levels (info, warn, and error) to effectively communicate messages based on their severity, enhancing debugging and troubleshooting efficiency.
|
|
Use the function that reflects your log level.
|
|
|
|
- log()
|
|
- warn()
|
|
- error()
|
|
|
|
### Example
|
|
|
|
```js
|
|
logger.log("This is an info log.")
|
|
|
|
logger.warn("This is a warn log.")
|
|
|
|
logger.error("This is an error log.")
|
|
```
|
|
|
|
#### Parameters
|
|
|
|
- `msg` *string*
|
|
The message you want to print out.
|
|
|
|
## UUID
|
|
|
|
This module provides functionality to generate a UUID
|
|
|
|
### Import
|
|
|
|
```js
|
|
let uuid = require("zitadel/uuid")
|
|
```
|
|
|
|
### `uuid.vX()` function
|
|
|
|
This function generates a UUID using [google/uuid](https://github.com/google/uuid). `vX` allows to define the UUID version:
|
|
|
|
- `uuid.v1()` *string*
|
|
Generates a UUID version 1, based on date-time and MAC address
|
|
- `uuid.v3(namespace, data)` *string*
|
|
Generates a UUID version 3, based on the provided namespace using MD5
|
|
- `uuid.v4()` *string*
|
|
Generates a UUID version 4, which is randomly generated
|
|
- `uuid.v5(namespace, data)` *string*
|
|
Generates a UUID version 5, based on the provided namespace using SHA1
|
|
|
|
#### Parameters
|
|
|
|
- `namespace` *UUID*/*string*
|
|
Namespace to be used in the hashing function. Either provide one of defined [namespaces](#namespaces) or a string representing a UUID.
|
|
- `data` *[]byte*/*string*
|
|
data to be used in the hashing function. Possible types are []byte or string.
|
|
|
|
### Namespaces
|
|
|
|
The following predefined namespaces can be used for `uuid.v3` and `uuid.v5`:
|
|
|
|
- `uuid.namespaceDNS` *UUID*
|
|
6ba7b810-9dad-11d1-80b4-00c04fd430c8
|
|
- `uuid.namespaceURL` *UUID*
|
|
6ba7b811-9dad-11d1-80b4-00c04fd430c8
|
|
- `uuid.namespaceOID` *UUID*
|
|
6ba7b812-9dad-11d1-80b4-00c04fd430c8
|
|
- `uuid.namespaceX500` *UUID*
|
|
6ba7b814-9dad-11d1-80b4-00c04fd430c8
|
|
|
|
### Example
|
|
```js
|
|
let uuid = require("zitadel/uuid")
|
|
function setUUID(ctx, api) {
|
|
if (api.metadata === undefined) {
|
|
return;
|
|
}
|
|
|
|
api.v1.user.appendMetadata('custom-id', uuid.v4());
|
|
}
|
|
```
|