An open source Badge Publishing Tool for use by badging systems and Credential Engine as part of its publishing system to facilitate publishing Open Badge data as CTDL linked data to the Credential Registry.
Timeframe Project start date: September 26, 2022 Project end date: December 31, 2022
The Badge Publisher Web Application end product will be deployed to IIS for integration with the Credential Engine Publishing System and available as open source code for other systems capable of hosting an HTML/CSS/JS application.
The Badge Publisher project will also serve the following design goals:
- Compatible with Open Badge Specifications 2.0 and 3.0.
- The Open Badge Publisher Web Application workflow will utilize the Credential Engine’s publishing system.
- Provide initial mock up for review and feedback by CE team members.
- The Open Badge Publisher Web Application will not require client side installation.
- UI will meet Web Content Accessibility Guidelines 2.1 Level AA requirements.
- UI must use responsive design.
- The UI uses styles and colors corresponding to Credential Engine's style guides for Colors and Typography
- The UI will be self documenting to decrease the necessity for separate instructional materials.
- The Open Badge Publisher Web Application will use an URL such as apps.credentialengine.org/badgepublisher and be hosted by Credential Engine’s Azure environment that utilizes Windows OS.
- The Open Badge Publisher Web Application will utilize an API Key obtainable through the Credential Registry Publishing System for authentication.
Prerequisites:
- Node.js (v16+)
- NPM
Create and customize your .env
environment settings
cp .env.example .env
Copy environment settings example- Update
.env
if necessary
Install the dependencies and then run the application using the vite dev compiler as follows:
npm install
npm run dev
Access the interface via your browser at http://localhost:5173
Update the .env
for production, including PUBLIC_BASEURL to the location where the app will run. If you are deploying
to a domain where a publisher instance is running, set ADAPTER_STATIC="true"
.
npm run build
Then copy the contents of the resulting build
directory to the location on your webserver where you plan to run the
application.
Configure your webserver to route requests to the fallback page 200.html
for requests that don't experience an
immediate "hit". See docs example for
Apache.