{"id":18724584,"url":"https://github.com/digital-blueprint/checkin-app","last_synced_at":"2025-07-09T20:32:22.585Z","repository":{"id":65648312,"uuid":"596458464","full_name":"digital-blueprint/checkin-app","owner":"digital-blueprint","description":"A simple location based contact tracing system. With the possibilities to check in yourself or a guest manually or with an in-build QR-Code scanner. - 🌎 Development: https://dbp-dev.tugraz.at/apps/checkin, 🌎 Demo: https://dbp-demo.tugraz.at/apps/checkin, 🌎 Production: https://checkin.tugraz.at","archived":false,"fork":false,"pushed_at":"2025-07-09T14:46:11.000Z","size":3841,"stargazers_count":4,"open_issues_count":1,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-07-09T15:49:40.943Z","etag":null,"topics":["checkin","dbp","digital-blueprint"],"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,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-02-02T08:21:39.000Z","updated_at":"2025-07-09T14:46:15.000Z","dependencies_parsed_at":"2024-01-18T14:09:17.964Z","dependency_job_id":"ca6c5dfb-9d1b-43cd-96e1-36bf35b81e83","html_url":"https://github.com/digital-blueprint/checkin-app","commit_stats":{"total_commits":798,"total_committers":14,"mean_commits":57.0,"dds":0.7694235588972431,"last_synced_commit":"f298f725d8d1e8bceafc8f4dc7c6e8c5198f1786"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/digital-blueprint/checkin-app","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digital-blueprint%2Fcheckin-app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digital-blueprint%2Fcheckin-app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digital-blueprint%2Fcheckin-app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digital-blueprint%2Fcheckin-app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/digital-blueprint","download_url":"https://codeload.github.com/digital-blueprint/checkin-app/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digital-blueprint%2Fcheckin-app/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264502647,"owners_count":23618663,"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":["checkin","dbp","digital-blueprint"],"created_at":"2024-11-07T14:07:12.915Z","updated_at":"2025-07-09T20:32:22.566Z","avatar_url":"https://github.com/digital-blueprint.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Check-in Application\n\n[GitHub Repository](https://github.com/digital-blueprint/checkin-app) |\n[npmjs package](https://www.npmjs.com/package/@digital-blueprint/checkin-app) |\n[Unpkg CDN](https://unpkg.com/browse/@digital-blueprint/checkin-app/) |\n[Checkin Bundle](https://github.com/digital-blueprint/relay-checkin-bundle) |\n[Project documentation](https://dbp-demo.tugraz.at/site/software/check-in.html)\n\n[![Build and Test](https://github.com/digital-blueprint/checkin-app/actions/workflows/build-test-publish.yml/badge.svg)](https://github.com/digital-blueprint/checkin-app/actions/workflows/build-test-publish.yml)\n\nA simple location based contact tracing system.\nWith the possibilities to check in yourself or a guest manually or with an in-build QR-Code scanner.\n\n## Prerequisites\n\n- You need the [API server](https://gitlab.tugraz.at/dbp/relay/dbp-relay-server-template) running\n- You need the [RelayCheckinBundle](https://github.com/digital-blueprint/relay-checkin-bundle) to handle\n  check-ins to places and contact tracing for warning about COVID-19 cases\n- For more information please visit the [Check-in project documentation](https://dbp-demo.tugraz.at/site/software/check-in.html)\n\n## Local development\n\n```bash\n# get the source\ngit clone git@github.com:digital-blueprint/checkin-app.git\ncd checkin-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\u003chttps://localhost:8001\u003e, so you should get a Single Sign On login page.\n\nTo enable building with custom assets, you need to provide your custom assets in the directory `assets_custom/checkin-app/assets/`. If you want to, you can also change this path in the file `rollup.config.js`. For more information, please visit the [dbp handbook page on custom assets](https://handbook.digital-blueprint.org/frameworks/frontend/dev/assets/#custom-assets).\n\n## Using this app as pre-built package\n\n### Install app\n\nIf you want to install the dbp check-in app in a new folder `check-in-app` with a path prefix `/` you can call:\n\n```bash\nnpx @digital-blueprint/cli install-app check-in check-in-app /\n```\n\n**Warning:** There may be issues when you run these commands as root user, best use a non-root user, like `www-data`.\nTo do this you can for example open a shell with `runuser -u www-data -- bash`.\n\nAfterwards you can point your Apache web-server to `check-in-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 `check-in-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/checkin-app/)\nfor example like this: [dbp-check-in/index.html](https://github.com/digital-blueprint/checkin-app/tree/main/examples/dbp-check-in/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 check-in app in the current folder you can call:\n\n```bash\nnpx @digital-blueprint/cli update-app check-in\n```\n\n**Warning:** There may be issues when you run these commands as root user, best use a non-root user, like `www-data`.\nTo do this you can for example open a shell with `runuser -u www-data -- bash`.\n\n## Activities\n\nThis app has the following activities:\n\n- `dbp-check-in-request`\n- `dbp-check-out-request`\n- `dbp-guest-check-in`\n- `dbp-report-risk`\n\nYou can find the documentation of these activities in the [check-in activities documentation](https://github.com/digital-blueprint/checkin-app/tree/main/src).\n\n## Adapt app\n\n### Functionality\n\nYou can add multiple attributes to the `\u003cdbp-check-in\u003e` tag.\n\n| attribute name          | value   | Link to description                                                                                                        |\n| ----------------------- | ------- | -------------------------------------------------------------------------------------------------------------------------- |\n| `provider-root`         | Boolean | [appshell](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  | [appshell](https://github.com/digital-blueprint/toolkit/tree/main/packages/app-shell#attributes)                           |\n| `keycloak-config`       | Object  | [appshell](https://github.com/digital-blueprint/toolkit/tree/main/packages/app-shell#attributes)                           |\n| `base-path`             | String  | [appshell](https://github.com/digital-blueprint/toolkit/tree/main/packages/app-shell#attributes)                           |\n| `src`                   | String  | [appshell](https://github.com/digital-blueprint/toolkit/tree/main/packages/app-shell#attributes)                           |\n| `no-welcome-page`       | Boolean | [appshell](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#attributes)                |\n| `darkModeThemeOverride` | String  | [theme-switcher](https://github.com/digital-blueprint/toolkit/tree/main/packages/theme-switcher#themes-attribute)          |\n| `search-hash-string`    | String  | [check-in activities](https://github.com/digital-blueprint/checkin-app/tree/main/src#check-in-activities)                  |\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-check-in auth requested-login-status analytics-event ...\u003e\u003c/dbp-check-in\u003e\n```\n\nSo a working example would be:\n\n```html\n\u003cdbp-check-in\n    provider-root\n    lang=\"de\"\n    entry-point-url=\"http://your.api\"\n    search-hash-string=\"unicheckin\"\n    html-overrides=\"global-override\"\n    src=\"/path/dbp-check-in.topic.metadata.json\"\n    base-path=\"/\"\n    keycloak-config='{\"url\": \"https://keyclock.url/auth\", \"realm\": \"your-realm\", \"clientId\": \"your-client-id\", \"silentCheckSsoRedirectUri\": \"/path/silent-check-sso.html\"}'\u003e\n    \u003cdbp-loading-spinner\u003e\u003c/dbp-loading-spinner\u003e\n\u003c/dbp-check-in\u003e\n```\n\nSee [AppShell Attributes](https://github.com/digital-blueprint/toolkit/tree/main/packages/app-shell#attributes)\nfor a list of more attributes.\n\nSee [Overriding slots in nested web components](https://github.com/digital-blueprint/toolkit/tree/main/packages/common#overriding-slots-in-nested-web-components)\nfor information about how to override slots.\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/frontend/theming/).\n\n## \"dbp-check-in\" 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 [check-in activities](https://github.com/digital-blueprint/checkin-app/tree/main/src#check-in-activities).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdigital-blueprint%2Fcheckin-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdigital-blueprint%2Fcheckin-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdigital-blueprint%2Fcheckin-app/lists"}