Introducing Builder Devtools

Yoav Ganbar - Jul 24 '23 - - Dev Community

Builder Devtools is a package to help you streamline the process of getting started with Builder’s Visual Headless CMS when starting a Qwik project.

💡 Next.js support is in the works!

We are excited to introduce and share a closer look at Builder.io's Devtools. It’s all about improving the developer experience.

Currently, there are some prerequisites and steps to get Qwik integrated with Builder, but we want to make it even easier.

Installation and initial setup

To get started with a new Qwik project, run the following command:

npm create qwik@latest
Enter fullscreen mode Exit fullscreen mode

Note: You could alternatively use pnpm or yarn.

Choose Site with Visual CMS option:

This initializes a new Qwik application and gets your app ready for Builder’s Visual CMS initialization.

  • Go to your project folder and run: pnpm install
  • Run: pnpm run dev
  • Click the link that appears in your terminal

This opens your newly created app and starts the connection flow to Builder:

This takes you through Builder’s account creation process (in case you’re not signed up), and ends with authorizing your application.

This actually creates a .env file in your project filesystem and brings in the API key from Builder:

Untitled

After the celebration, you are ready to use Builder’s drag & drop UI inside your app!

How cool is that?!

Registering components

One of the key features of our Visual CMS is the option to use the code and components you write inside your codebase and then use them inside of Builder’s UI. We call this “registering components”.

In the past, this required developers to register their components using the SDK and filling out the correct properties.

Now, with our new Devtools we’ve made this process easier.

You’ll notice a little icon on the bottom right — this is our Devtools drawer.

Untitled

Clicking on it opens a drawer that displays all of your components, both registered and unregistered.

User interface and functionality

The UI of the Devtools is designed for developers' convenience, providing a comprehensive view of all components and the ability to interact with them directly. This includes renaming, registering, and editing a component's inputs:

The advantage of a dev server

The Devtools take advantage of having a dev server, offering read-write access to the file system and the ability to post content updates to Builder.io accounts. This helps developers to swiftly generate new content. Whether you're creating a blog, product page, or any other type of content, the tool enables you to accomplish it with just a button click:

Potential integrations with other frameworks

We’re not stopping here. As we’ve mentioned, we're working on making the Devtools compatible with other JavaScript frameworks such as Next.js, SvelteKit, and Remix.

Conclusion

Builder.io's Devtools was created out of DX obsession and constant iterations. We want to provide a smooth experience for creating components and building web apps – all while tightening the collaboration between your whole product team.

If you're a developer looking to clear your marketing backlog tickets that consist of basic UI changes, it’s worth giving Builder a test drive.

Stay tuned for more insights and updates. Happy coding!

Need help?

If you run into any trouble using this tool, please join our Discord server.

Visually build with your components

Builder.io is a headless CMS that lets you drag and drop with your components right within your existing site.

Try it out Learn more

// Dynamically render your components
export function MyPage({ json }) {
  return <BuilderComponent content={json} />
}

registerComponents([MyHero, MyProducts])
Enter fullscreen mode Exit fullscreen mode
Read the full post on the Builder.io blog
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Terabox Video Player