From 1 Oct 2025, the Infocomm Media Development Authority (IMDA) will take over the maintenance of OpenCerts. For enquiries, reach out to https://trustvc.io
As of 31 December 2019, we have migrated from OpenCerts v1 to v2.
As part of the migration, do note that certificateStore has been renamed to documentStore, please refer to the public/static/demo/sepolia.opencert for the latest implementation or refer to the snippet below for more information about the "issuers" section of the document.
"issuers": [
{
"name": <name>,
"url": <url>,
"documentStore": <documentStore Address>,
"identityProof": {
"type": "DNS-TXT",
"location": <domain name>
}
}
],
Visit https://docs.opencerts.io/docs/migrations/v1_to_v2#schema-change for more information about the migration and schema changes in v2.
See also:
We develop primarily on a OS X / Linux environment so please lodge an issue if you are using Windows and find that you cannot successfully set up a local instance of this software.
There is a rudimentary interface for adding a new template for organisations that are doing it for the first time. (support for adding templates to existing organisations will come in a later release)
npm run dev-clinpm install
npm run devFor Windows you need to set up the toolchain for node-gyp before installing this repository, follow the instructions in https://github.com/nodejs/node-gyp#on-windows.
npm install
npm run devNET is used for setting the default network, setting it to mainnet uses the public Ethereum network. If it is not set it defaults to Sepolia testnet
E.g:
NET=mainnet npm run devFor embedded certificate rendering, we have provided a frameless view located at /frameless-viewer
More information at opencerts-documentation
To enable debug logs in the browser, set localStorage.debug="*"
If you see module build failure message like:
Module build failed (from ./node_modules/mini-css-extract-plugin/dist/loader.js):
ModuleBuildError: Module build failed (from ./node_modules/sass-loader/lib/loader.js):
Error: ENOENT: no such file or directory, scandir 'D:\opencerts-website\node_modules\node-sass\vendor'
at Object.readdirSync (fs.js:783:3)
Try running npm rebuild
To run integration tests locally, make sure you run npm run build once to build the static site first. The e2e tests will then spin up a server based on the out folder in project root.
develop branch is deployed to https://dev.opencerts.io -> for development and testing purposes only.
master branch is deployed to https://opencerts.io -> for production use.