Skip to content

Commit fd93b8c

Browse files
committed
docs: update readme
1 parent e27f213 commit fd93b8c

File tree

1 file changed

+55
-39
lines changed

1 file changed

+55
-39
lines changed

README.md

Lines changed: 55 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -19,25 +19,21 @@
1919
</p>
2020
</div>
2121

22-
## 👋 Introduction
22+
## What is Composify?
2323

24-
Welcome to Composify!
24+
Composify is a visual page builder for React that works with your own components.
2525

26-
Composify is an open-source toolkit that lets you build pages visually, using your own production components. Think of it as a WYSIWYG editor that's powered by your component library, not some generic widget set.
26+
Most WYSIWYG editors force you to use their generic component set. Composify takes a different approach—you register your production components once, and then anyone on your team can use them to build pages visually. Your design system stays intact, but now marketing and content teams can compose pages without filing tickets.
2727

28-
Engineers build components once, and Composify empowers anyone on the team—from marketing to product—to visually compose pages with them. The result is faster iteration, fewer developer bottlenecks, and a massive productivity boost for everyone.
28+
It's just a React component, so it works with Next.js, Remix, or any React environment. You own your data and there's no vendor lock-in.
2929

30-
Find out more at our [website](https://composify.js.org).
30+
Check out the [live demo](https://composify.js.org/demo) to see it in action.
3131

32-
## 📖 Documentation
33-
34-
Visit [https://composify.js.org/docs](https://composify.js.org/docs) to view the full documentation.
35-
36-
## 🚀 Getting Started
32+
## Getting Started
3733

3834
### Installation
3935

40-
Add Composify to your project using your favorite package manager:
36+
Install Composify with your preferred package manager:
4137

4238
```bash
4339
# npm
@@ -50,13 +46,14 @@ $ pnpm add @composify/react
5046
$ yarn add @composify/react
5147
```
5248

53-
### Register your components
49+
### Register Your Components
5450

5551
Before you can use a component in the `Editor` or `Renderer`, you need to register it in the `Catalog`.
5652

53+
Let's say you have a simple text component:
54+
5755
```tsx
58-
// catalog.tsx
59-
import { Catalog } from '@composify/react/renderer';
56+
// components/Text.tsx
6057
import { FC } from 'react';
6158

6259
type Props = {
@@ -67,7 +64,17 @@ type Props = {
6764
const Text: FC<Props> = ({ textAlign, children }) => (
6865
<p style={{ textAlign }}>{children}</p>
6966
);
70-
67+
68+
export default Text;
69+
```
70+
71+
Now register it:
72+
73+
```tsx
74+
// catalog.tsx
75+
import { Catalog } from '@composify/react/renderer';
76+
import Text from '@/components/Text';
77+
7178
Catalog.register('Text', {
7279
component: Text,
7380
props: {
@@ -90,11 +97,11 @@ Catalog.register('Text', {
9097
});
9198
```
9299

93-
> **Important**: Make sure this catalog file is imported at the entry point of your app (like `index.tsx` or `app.tsx`) so your components are registered.
100+
> **Important**: Make sure to import this catalog file at your app's entry point (like `index.tsx` or `_app.tsx`) so your components are registered before the app renders.
94101
95-
### Render your components
102+
### Render Your Components
96103

97-
Once registered, you can render any JSX content with the `Renderer` component.
104+
Once registered, you can render JSX from a string using the `Renderer` component:
98105

99106
```tsx
100107
// page.tsx
@@ -112,9 +119,9 @@ export const Page = () => (
112119
);
113120
```
114121

115-
### Edit visually
122+
### Edit Visually
116123

117-
To edit JSX in a visual way, use the `Editor` component.
124+
To enable visual editing, use the `Editor` component:
118125

119126
```tsx
120127
// editor.tsx
@@ -133,33 +140,42 @@ export const Page = () => (
133140
);
134141
```
135142

136-
## 🔥 Use Cases
143+
The `Editor` provides a visual interface where users can drag, drop, and configure components without touching code.
144+
145+
## Why Use Composify?
146+
147+
We built Composify to solve a common problem: engineers build component libraries, but only engineers can use them effectively. Here are some scenarios where Composify helps:
148+
149+
- **Ship UI changes without deployments** — Need to update a landing page or promotional banner? Push changes instantly without waiting for CI/CD pipelines or redeployments.
150+
151+
- **Reduce engineering bottlenecks** — Marketing teams can update content and layouts themselves instead of creating tickets and waiting for developers. This frees up engineering time for actual feature work.
152+
153+
- **A/B testing made simple** — Test different UI variations without code changes or complex feature flag setups.
154+
155+
- **Rapid prototyping** — Build high-fidelity prototypes using your actual production components, not placeholder widgets. What you prototype is what you ship.
156+
157+
- **Better than headless CMS** — Traditional CMSs give you generic WYSIWYG editors. Composify lets you work with your own design system, so everything stays consistent.
137158

138-
Composify is a versatile tool that can be used in a variety of scenarios:
159+
- **No-code tools for your team** — Empower content and product teams to build their own pages using components that engineers have already built and tested.
139160

140-
- **Instant UI Updates**: Push UI changes without a full redeploy.
141-
- **Unblock Your Team**: Reduce the engineering backlog and allow non-developers to ship changes.
142-
- **A/B Testing and Prototyping**: Test different UI variations and build high-fidelity prototypes.
143-
- **Headless CMS**: Power your content with your own component library.
144-
- **No-Code Tools**: Empower content and marketing teams to build their own pages.
161+
There's more detail on specific use cases in the [documentation](https://composify.js.org/docs/use-cases/instant-ui-updates).
145162

146-
Find out more at our [website](https://composify.js.org/docs/use-cases/instant-ui-updates).
163+
## Composify Cloud
147164

148-
## ☁️ Composify Cloud
165+
If you want a hosted version with collaboration features, [Composify Cloud](https://composify.js.org/cloud) provides:
149166

150-
For teams that want to move even faster, Composify Cloud provides a managed, hassle-free experience with features like:
167+
- **Managed hosting** — No infrastructure to manage, unlimited bandwidth
168+
- **Real-time collaboration** — Multiple team members can edit the same page simultaneously
169+
- **Version history** — Time-travel through changes and restore previous versions
151170

152-
- Managed hosting and unlimited bandwidth
153-
- Real-time collaboration
154-
- Time-travel version history
155-
- Pay-as-you-go pricing
171+
## Documentation
156172

157-
Learn more about [Composify Cloud →](https://composify.js.org/cloud)
173+
Full documentation is available at [composify.js.org/docs](https://composify.js.org/docs).
158174

159-
## 🙌 Contributing
175+
## Contributing
160176

161-
We welcome contributions from the community! Whether you're interested in fixing a bug, adding a new feature, or improving our documentation, we'd love to have your help.
177+
We welcome contributions to Composify! Whether you're fixing bugs, adding features, or improving docs, pull requests and issues are always welcome.
162178

163-
## 📄 License
179+
## License
164180

165-
This project is licensed under the [Elastic License 2.0](LICENSE).
181+
This project is licensed under the [Elastic License 2.0](LICENSE). It's free to use for most cases, with some restrictions on offering Composify as a hosted service. See the license file for details.

0 commit comments

Comments
 (0)