{"id":18724650,"url":"https://github.com/digital-blueprint/dispatch-app","last_synced_at":"2025-04-12T15:45:02.860Z","repository":{"id":91477109,"uuid":"591282056","full_name":"digital-blueprint/dispatch-app","owner":"digital-blueprint","description":"Dispatch Application","archived":false,"fork":false,"pushed_at":"2025-04-10T14:51:07.000Z","size":4552,"stargazers_count":5,"open_issues_count":1,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-04-10T16:03:47.170Z","etag":null,"topics":["dbp","digital-blueprint","dispatch"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-2.1","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/digital-blueprint.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2023-01-20T11:26:52.000Z","updated_at":"2025-04-10T14:51:11.000Z","dependencies_parsed_at":null,"dependency_job_id":"b9a10268-fdbb-4e1b-9bd5-5b162315cb3d","html_url":"https://github.com/digital-blueprint/dispatch-app","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digital-blueprint%2Fdispatch-app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digital-blueprint%2Fdispatch-app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digital-blueprint%2Fdispatch-app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digital-blueprint%2Fdispatch-app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/digital-blueprint","download_url":"https://codeload.github.com/digital-blueprint/dispatch-app/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248591045,"owners_count":21129948,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dbp","digital-blueprint","dispatch"],"created_at":"2024-11-07T14:07:24.903Z","updated_at":"2025-04-12T15:45:02.823Z","avatar_url":"https://github.com/digital-blueprint.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Dispatch Application\n\n[GitHub Repository](https://github.com/digital-blueprint/dispatch-app) |\n[npmjs package](https://www.npmjs.com/package/@digital-blueprint/dispatch-app) |\n[Unpkg CDN](https://unpkg.com/browse/@digital-blueprint/dispatch-app/) |\n[Dispatch Bundle](https://github.com/digital-blueprint/relay-dispatch-bundle)\n\n[![Build and Test](https://github.com/digital-blueprint/dispatch-app/actions/workflows/build-test-publish.yml/badge.svg)](https://github.com/digital-blueprint/dispatch-app/actions/workflows/build-test-publish.yml)\n\nThis is an application for managing postal/electronic deliveries which get forwarded to an external \"Dual Delivery\" service provider.\n\n## Prerequisites\n\n- You need the [API server](https://github.com/digital-blueprint/relay-server-template) running\n- You need the [DBP Dispatch Bundle](https://github.com/digital-blueprint/relay-dispatch-bundle)\n\n## Local development\n\n```bash\n# get the source\ngit clone git@github.com:digital-blueprint/dispatch-app.git\ncd dispatch-app\ngit submodule update --init\n\n# install dependencies\nnpm install\n\n# constantly build dist/bundle.js and run a local web-server on port 8001\nnpm run watch\n\n# constantly build dist/bundle.js and run a local web-server on port 8001 using a custom assets directory assets_custom/\nnpm run watch-custom\n\n# run tests\nnpm test\n```\n\nJump to \u003chttp://localhost:8001\u003e, and you should get a Single Sign On login page.\n\nBy default, the application is built using the assets in `assets/`. However, custom assets can also be used to build the application. The custom assets can be added to the directory `assets_custom/dbp-dispatch/assets/`. This allows developers to easily develop and build the application for different environments.\n\nTo use the Nextcloud functionality you need a running Nextcloud server with the\n[webapppassword](https://github.com/digital-blueprint/webapppassword) Nextcloud app like this\n[Nextcloud Development Environment](https://github.com/digital-blueprint/webapppassword/tree/main/docker).\n\n## Use app via Docker\n\n### docker-compose.yml\n\n```yaml\nversion: '3'\nservices:\n  web:\n    image: ghcr.io/digital-blueprint/dispatch-app:latest\n    restart: always\n    ports:\n      - \"8000:80\"\n```\n\n## Using this app as pre-built package\n\n### Install app\n\nIf you want to install the dbp dispatch app in a new folder `dispatch-app` with a path prefix `/` you can call:\n\n```bash\nnpx @digital-blueprint/cli@latest install-app dispatch dispatch-app /\n```\n\nAfterward you can point your Apache web-server to `dispatch-app/public`.\n\nMake sure you are allowing `.htaccess` files in your Apache configuration.\n\nAlso make sure to add all of your resources you are using (like your API and Keycloak servers) to the\n`Content-Security-Policy` in your `dispatch-app/public/.htaccess`, so the browser allows access to those sites.\n\nYou can also use this app directly from the [Unpkg CDN](https://unpkg.com/browse/@digital-blueprint/dispatch-app/)\nfor example like this: [dbp-dispatch/index.html](https://github.com/digital-blueprint/dispatch-app/tree/main/examples/dbp-dispatch/index.html)\n\nNote that you will need a Keycloak server along with a client id for the domain you are running this html on.\n\n### Update app\n\nIf you want to update the dbp dispatch app in the current folder you can call:\n\n```bash\nnpx @digital-blueprint/cli@latest update-app dispatch\n```\n\n## Using a single activity as pre-built package\n\nYou can also use a single activity directly from the [Unpkg CDN](https://unpkg.com/browse/@digital-blueprint/dispatch-app/)\nfor example the `dbp-qualified-dispatch-pdf-upload` activity to qualifiedly sign PDF documents like this:\n[dbp-qualified-dispatch-pdf-upload/index.html](https://github.com/digital-blueprint/dispatch-app/tree/main/examples/dbp-qualified-dispatch-pdf-upload/index.html)\n\nNote that you will need a Keycloak server along with a client id for the domain you are running this html on.\n\n## Activities\n\nThis app has the following activities:\n- `dbp-dd-activity`\n- `dbp-qualified-signature-pdf-upload`\n- `dbp-official-signature-pdf-upload`\n\nYou can find the documentation of these activities in the [qualified dispatch activities documentation](https://github.com/digital-blueprint/dispatch-app/tree/main/src).\n\n## Adapt app\n\n### Functionality\n\nYou can add multiple attributes to the `\u003cdbp-greenlight\u003e` tag.\n\n| attribute name | value | Link to description                                                                                                                 |\n|----------------|-------|-------------------------------------------------------------------------------------------------------------------------------------|\n| `provider-root` | Boolean | [app-shell](https://github.com/digital-blueprint/toolkit/tree/main/packages/app-shell#attributes)                          |\n| `lang`         | String | [language-select](https://github.com/digital-blueprint/toolkit/tree/main/packages/language-select#attributes)              |\n| `entry-point-url` | String | [app-shell](https://github.com/digital-blueprint/toolkit/tree/main/packages/app-shell#attributes)                          |\n| `keycloak-config` | Object | [app-shell](https://github.com/digital-blueprint/toolkit/tree/main/packages/app-shell#attributes)                          |\n| `base-path` | String | [app-shell](https://github.com/digital-blueprint/toolkit/tree/main/packages/app-shell#attributes)                          |\n| `src` | String | [app-shell](https://github.com/digital-blueprint/toolkit/tree/main/packages/app-shell#attributes)                          |\n| `html-overrides` | String | [common](https://github.com/digital-blueprint/toolkit/tree/main/packages/common#overriding-slots-in-nested-web-components) |\n| `themes` | Array | [theme-switcher](https://github.com/digital-blueprint/toolkit/tree/main/packages/theme-switcher#themes-attribute)          |\n| `darkModeThemeOverride` | String | [theme-switcher](https://github.com/digital-blueprint/toolkit/tree/main/packages/theme-switcher#themes-attribute)          |\n\n#### Mandatory attributes\n\nIf you are not using the `provider-root` attribute to \"terminate\" all provider attributes\nyou need to manually add these attributes so that the topic will work properly:\n\n```html\n\u003cdbp-dispatch\n  auth\n  requested-login-status\n  analytics-event\n  initial-file-handling-state\n  clipboard-files\n\u003e\n\u003c/dbp-dispatch\u003e\n```\n\n### Design\n\nFor frontend design customizations, such as logo, colors, font, favicon, and more, take a look at the [theming documentation](https://handbook.digital-blueprint.org/frameworks/frontend/theming/).\n\n## \"dbp-dispatch\" slots\n\nThese are common slots for the app-shell. You can find the documentation of these slots in the [app-shell documentation](https://github.com/digital-blueprint/toolkit/tree/main/packages/app-shell).\nFor the app specific slots take a look at the [dispatch activities](https://github.com/digital-blueprint/dispatch-app/tree/main/src).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdigital-blueprint%2Fdispatch-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdigital-blueprint%2Fdispatch-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdigital-blueprint%2Fdispatch-app/lists"}