webcm
v0.10.9
Published
Demonstrative implementation of a web-based manager for utilising Managed Components
Downloads
150
Readme
WebCM is a proxy server implementation of a Components Manager. It works independently from your existing HTTP server. By proxying your server, it can add endpoints, execute server-side code, manipulate responses and more. These capabilities allow for a very performant way to load Managed Components.
Usage
💡 Prerequisite: To run WebCM you need to use Node version 18. You can then install all dependencies with
npm i
.
It's very easy to get up and running with WebCM using npx
!
- Create a
webcm.config.ts
config file (use example.config.ts as an example) - Run
npx webcm
- WebCM will automatically download the Managed Components you specified and start the server
Develop
git clone [email protected]:cloudflare/webcm.git && cd webcm && npm i
- Create a
webcm.config.ts
config file (use example.config.ts as an example) - Run
npm run dev
Build your own Managed Components
You might want to make WebCM load a locally developed Managed Component.
To do so, run:
npx webcm path/to/component.ts
This will run the component on a simple static site, with all permissions enabled. If you want to proxy a different website, pass the URL as another CLI argument:
npx webcm path/to/component.ts https://example.com
To pass custom settings to that component, use --settings_<settingName>
flags,
like so:
npx webcm path/to/component.ts --settings_apiKey=xxxxxxxxx
To test the component with different permissions, create a webcm.config.ts
(see example.config.ts) and set it to:
export default {
components: [
{
path: './path/to/component.ts',
permissions: ['execute_unsafe_scripts'],
},
],
}
Read more
- See managedcomponents.dev for more information about Managed Components and how they work
- Check the Managed Component Starter Template for buildin your own Managed Component