Component library
Use the App Framework for any new projects.
We recommend creating apps instead of UI extensions. Read the app FAQ to learn why.
We recommend creating apps instead of UI extensions. Read the app FAQ to learn why.
Introduction
The Forma 36 Design System and React component library provides a comprehensive collection of UI components which can be used to quickly build UI Extensions and Contentful related applications.
Requirements
- Forma 36 requires React >= 16.6.3
Getting Started
Starting from scratch
The easiest way to create a new extension with React and Forma 36 is to use create-contentful-extension CLI, similar to the well-known create-react-app
. It generates an example extension for you and hides all configuration details, so you don’t need to install or configure tools like Webpack, Babel or Parcel. These tools are preconfigured and hidden so that you can focus on your own code.
Read Manage UI Extensions via the CLI to learn more.
Add to an existing UI Extension that uses Webpack or Parcel
npm i react react-dom @contentful/app-sdk @contentful/forma-36-react-components
import { init } from '@contentful/app-sdk';
import React from 'react';
import ReactDOM from 'react-dom';
import { Button } from '@contentful/forma-36-react-components';
import '@contentful/forma-36-react-components/dist/styles.css';
class App extends React.Component {
render() {
return (
<Button
buttonType="primary"
onClick={() => {
console.log('You clicked on Forma36 button');
}}
>
Click on me
</Button>
);
}
}
init(() => {
ReactDOM.render(<App />, document.getElementById('root'));
});
Example built with Forma36 and create-contentful-extension
Links
Next steps
Not what you’re looking for? Try our FAQ.