Welcome to the UVerify UI Template repository! This project provides a flexible templating system for building custom user interfaces for UVerify. Whether you're creating a tailored experience for your users or extending the platform's functionality, this repository has you covered.
This monorepo contains the following packages to help you get started:
blueprint: An example implementation of the UVerify UI template interface. Use this as a reference or starting point for your own templates.core: The core UVerify UI template interface and types, providing the foundation for building custom templates.cli: A developer-friendly CLI tool for generating new UVerify UI templates quickly and easily.
Ready to create your own UVerify UI template? Follow these steps:
-
Use the CLI tool to generate a new template:
npx @uverify/cli init my-template
-
Navigate into the newly created directory:
cd my-template -
Install dependencies and start the development server:
npm install npm run dev
-
Customize your UI by following the instructions in the
README.mdfile inside themy-templatedirectory.
Add a file entry to additional-templates.json in your uverify-ui checkout:
[
{
"type": "file",
"name": "MyTemplate",
"path": "../my-template/src/Certificate.tsx"
}
]Then run node config.js in the uverify-ui directory to regenerate the template registry, and start the dev server.
To include your template in the standard deployment at app.uverify.io:
- Push your template to a public GitHub repository.
- Open an Add External Template issue in
uverify-ui, providing the repository URL, the exact commit hash, and evidence that you have tested the template locally. - Once the security review is complete, a maintainer will open (or accept your) pull request adding a
repositoryentry toadditional-templates.json.
[
{
"type": "repository",
"name": "MyTemplate",
"url": "https://github.com/your-org/my-template",
"commit": "a3f1c2d4e5b6...",
"path": "src/Certificate.tsx"
}
]The commit hash pins the exact revision used in the build, making the inclusion fully auditable.
We welcome contributions of all kinds! Whether it's fixing bugs, adding new features, or improving documentation, your help is greatly appreciated. To contribute:
- Open an issue to discuss your idea or report a bug.
- Submit a pull request with your changes.
Let’s build something amazing together!
This project is licensed under the Apache License 2.0. For more details, see the LICENSE file.
The core components of UVerify, including uverify-ui and uverify-backend, are licensed under the AGPL-3.0. However, this repository provides extension points for creating custom UI templates that are dynamically imported by the UVerify platform.
- Modifying the UVerify core (backend or UI): Requires compliance with AGPL-3.0.
- Creating custom UI templates: Does not require compliance with AGPL-3.0. These templates remain under the Apache License 2.0, allowing you to create and distribute proprietary or open-source extensions without restrictions.
In short, you can build custom UIs without worrying about AGPL-3.0 compliance, as long as you’re not modifying the UVerify core.