{"id":18724623,"url":"https://github.com/digital-blueprint/formalize-app","last_synced_at":"2025-07-19T04:02:56.113Z","repository":{"id":65737053,"uuid":"598154148","full_name":"digital-blueprint/formalize-app","owner":"digital-blueprint","description":"Management of form entries that have been created via external systems. - 🌎 Development: https://dbp-dev.tugraz.at/apps/formalize, 🌎 Demo: https://dbp-demo.tugraz.at/apps/formalize, 🌎 Production: https://formulare.tugraz.at","archived":false,"fork":false,"pushed_at":"2025-07-12T05:23:59.000Z","size":5727,"stargazers_count":2,"open_issues_count":2,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-07-12T07:13:56.687Z","etag":null,"topics":["dbp","digital-blueprint","formalize"],"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-06T14:16:27.000Z","updated_at":"2025-07-12T05:24:01.000Z","dependencies_parsed_at":"2023-10-16T16:44:15.431Z","dependency_job_id":"77ad6c53-e779-4e8c-84d8-d92feb1a813e","html_url":"https://github.com/digital-blueprint/formalize-app","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/digital-blueprint/formalize-app","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digital-blueprint%2Fformalize-app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digital-blueprint%2Fformalize-app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digital-blueprint%2Fformalize-app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digital-blueprint%2Fformalize-app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/digital-blueprint","download_url":"https://codeload.github.com/digital-blueprint/formalize-app/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digital-blueprint%2Fformalize-app/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265886985,"owners_count":23844319,"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","formalize"],"created_at":"2024-11-07T14:07:20.656Z","updated_at":"2025-07-19T04:02:56.105Z","avatar_url":"https://github.com/digital-blueprint.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Formalize Application\n\n[GitHub Repository](https://github.com/digital-blueprint/formalize-app) |\n[npmjs package](https://www.npmjs.com/package/@digital-blueprint/formalize-app) |\n[Unpkg CDN](https://unpkg.com/browse/@digital-blueprint/formalize-app/) |\n[Formalize Bundle](https://github.com/digital-blueprint/relay-formalize-bundle)\n\n[![Build, Test and Publish](https://github.com/digital-blueprint/formalize-app/actions/workflows/build-test-publish.yml/badge.svg)](https://github.com/digital-blueprint/formalize-app/actions/workflows/build-test-publish.yml)\n\nManagement of form entries that have been created via external systems.\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 [DbpRelayFormalizeBundle](https://github.com/digital-blueprint/relay-formalize-bundle) for the API server to persist and fetch submissions\n\n## Local development\n\n```bash\n# get the source\ngit clone git@github.com:digital-blueprint/formalize-app.git\ncd formalize-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_local/\nnpm run watch-local\n\n# run tests\nnpm test\n```\n\nJump to \u003chttps://localhost:8001\u003e, and you should get a Single Sign On login page.\n\n## Using this app as pre-built package\n\n### Install app\n\nIf you want to install the dbp formalize app in a new folder `formalize-app` you can call:\n\n```bash\nnpx @digital-blueprint/cli install-app formalize formalize-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 `formalize-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 `formalize-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/formalize-app/)\nfor example like this: [dbp-formalize/index.html](https://github.com/digital-blueprint/formalize-app/tree/main/examples/dbp-formalize/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 formalize app in the current folder you can call:\n\n```bash\nnpx @digital-blueprint/cli update-app formalize\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-formalize-show-submissions`\n- `dbp-formalize-render-from`\n\nYou can find the documentation of the activity in the [formalize activities documentation](https://github.com/digital-blueprint/formalize-app/tree/main/src).\n\n## Adapt app\n\n### Functionality\n\nYou can add multiple attributes to the `\u003cdbp-formalize\u003e` tag.\n\n| attribute name          | value   | description                                                                                                   |\n| ----------------------- | ------- | ------------------------------------------------------------------------------------------------------------- |\n| `provider-root`         | Boolean | [app-shell](https://gitlab.tugraz.at/dbp/web-components/toolkit/-/tree/master/packages/app-shell)             |\n| `lang`                  | String  | [language-select](https://gitlab.tugraz.at/dbp/web-components/toolkit/-/tree/master/packages/language-select) |\n| `entry-point-url`       | String  | [app-shell](https://gitlab.tugraz.at/dbp/web-components/toolkit/-/tree/master/packages/app-shell)             |\n| `keycloak-config`       | Object  | [app-shell](https://gitlab.tugraz.at/dbp/web-components/toolkit/-/tree/master/packages/app-shell)             |\n| `base-path`             | String  | [app-shell](https://gitlab.tugraz.at/dbp/web-components/toolkit/-/tree/master/packages/app-shell)             |\n| `src`                   | String  | [app-shell](https://gitlab.tugraz.at/dbp/web-components/toolkit/-/tree/master/packages/app-shell)             |\n| `html-overrides`        | String  | [common](https://gitlab.tugraz.at/dbp/web-components/toolkit/-/tree/master/packages/common)                   |\n| `themes`                | Array   | [theme-switcher](https://gitlab.tugraz.at/dbp/web-components/toolkit/-/tree/master/packages/theme-switcher)   |\n| `darkModeThemeOverride` | String  | [theme-switcher](https://gitlab.tugraz.at/dbp/web-components/toolkit/-/tree/master/packages/theme-switcher)   |\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-formalize auth requested-login-status analytics-event\u003e\u003c/dbp-formalize\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://dbp-demo.tugraz.at/dev-guide/frontend/theming/).\n\n## \"dbp-formalize\" slots\n\nThese are common slots for the app-shell. You can find the documentation of these slots in the [app-shell documentation](https://gitlab.tugraz.at/dbp/web-components/toolkit/-/tree/master/packages/app-shell).\nFor the app specific slots take a look at the [formalize activities](https://github.com/digital-blueprint/formalize-app/tree/main/src).\n\n## Notice\n\nWe are using autogenerated table header for creating the submission tables.\n\nA [get query](https://api-demo.tugraz.at/#operations-Formalize-getFormalizeSubmissionItem) is made to dbp-relay.\nThis returns a json. This json contains various data of the previous posted submission.\n\nTo post a form to the api, take a look at: [operations-Formalize-postFormalizeSubmissionCollection](https://api-demo.tugraz.at/#operations-Formalize-postFormalizeSubmissionCollection).\nThis post contains the name of the form \"form\" and the data of the form \"dataFeedElement\". the data must be a valid json as a string, i.e. quotation marks must be escaped with a \"\\\".\nThe data keys of forms with the same \"form\" name must be consistent, otherwise the new keys are not displayed and no data would be displayed in the old key table header.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdigital-blueprint%2Fformalize-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdigital-blueprint%2Fformalize-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdigital-blueprint%2Fformalize-app/lists"}