Drag and drop page builder and CMS for React, Vue, Angular, and more

Overview

BUILDER


Drag and drop page builder and CMS for React, Vue, Angular, and more

Use your code components and the stack of your choice. No more being pestered for HTML changes :)


code style: prettier PRs Welcome License Types


Editor example


Quick start:

Or choose your framework:

  REST API     GraphQL     Shopify     VS Code           React     Next.js9     Gatsby     Vue     Nuxt     Angular     Webcomponents  


Register components Rendered your visually created content
{props.title} )   Builder.registerComponent(Heading, {   name: 'Heading',   inputs: [{ name: 'title', type: 'text' }] })">
import { Builder } from '@builder.io/react'
 
// Register our heading component for use in
// the visual editor
const Heading = props => (
  <h1 className="my-heading">{props.title}</h1>
)
 
Builder.registerComponent(Heading, {
  name: 'Heading',
  inputs: [{ name: 'title', type: 'text' }]
})
}">
import { BuilderComponent, builder } from '@builder.io/react'
 
builder.init('YOUR_KEY')
 
export let BuilderPage = () => {
  const [pageJson, setPage] = useState(null)
 
  useEffect(() => {
    builder.get('page', { url: '/' })
      .promise().then(setPage)
  }, [])
 
  return <BuilderComponent model="page" content={pageJson} />
}

Who uses Builder.io?


Try it out!

Use our CLI to get started with one command:

Or try out:

 

Try our interactive fiddle to try the visual editor

 

Use our Figma plugin to turn designs into code!

 

Try our code generation fiddle

 

Try our VS Code extension for in-IDE visual coding

 

Try our Shopify app for visual Shopify store building

 

Try our headless platform for API-driven development


How does it work?

  • Integrate the Builder API or SDK to your site or app
  • Create a free account on builder.io and drag and drop to create and publish pages and content

How is the content structured?

In Builder, content is structured in models, and customized with custom fields and targeting

  • Builder pages - full drag and drop control between your site's header and footer. Try it out
  • Builder sections - make a part of a page visually editable in Builder and use our targeting and scheduling to decide who sees what. Try it out
  • Builder data - fetch structured data from Builder and use it anywhere in your application (e.g. menu items, structured pages). Try it out

Read more about how builder works here

See here for examples on how to structure a site with Builder

Featured Integrations

REST API

GraphQL

Shopify

VS Code

Figma

React

Next.js

Gatsby

Vue

Nuxt

Angular

Web Components


Don't see an integration you're looking for? Our HTML API, Content APIs, and GraphQL APIs works for all tech stacks and frameworks.

What's in this repository?

This repo houses all of the various SDKs, usage examples, starter projects, and plugins.

Structuring your site

There are a lot of ways you can use Builder for your site. Some of the main questions you'll want to ask yourselves - what on your site should be in your code vs in Builder.

As a general rule, parts of your site that should be managed by non developers should probably be in Builder. Parts that are complex with a lot of code, should probably be in your codebase. Using custom components in your Builder content can help you strike a good balance here as well

Here are some examples we recommend for how to structure various pages on your site, for instance for a headless commerce site:

examples on how to structure your site

How the Builder.io platform works

How it works

Data models, components, SEO, and more

Builder.io gives you a ton more power and control than just page building. Check our guides on

Additional framework support:

As well as some handy power features like:

Join the community!

Questions? Requests? Feedback? Chat with us in our official forum!

Troubleshooting and feedback

Problems? Requests? Open an issue. We always want to hear feedback and interesting new use cases and are happy to help.

We're hiring!

Help us enable anyone to build digital experiences and bring more ideas to life --> https://www.builder.io/m/careers

Comments
  • Bump svelte from 3.47.0 to 3.49.0 in /examples/svelte/sveltekit

    Bump svelte from 3.47.0 to 3.49.0 in /examples/svelte/sveltekit

    Bumps svelte from 3.47.0 to 3.49.0.

    Changelog

    Sourced from svelte's changelog.

    3.49.0

    • Improve performance of string escaping during SSR (#5701)
    • Add ComponentType and ComponentProps convenience types (#6770)
    • Add support for CSS @layer (#7504)
    • Export CompileOptions from svelte/compiler (#7658)
    • Fix DOM-less components not being properly destroyed (#7488)
    • Fix class: directive updates with <svelte:element> (#7521, #7571)
    • Harden attribute escaping during SSR (#7530)

    3.48.0

    • Allow creating cancelable custom events with createEventDispatcher (#4623)
    • Support {@const} tag in {#if} blocks #7241
    • Return the context object in setContext #7427
    • Allow comments inside {#each} blocks when using animate: (#3999)
    • Fix |local transitions in {#key} blocks (#5950)
    • Support svg namespace for {@html} (#7002, #7450)
    • Fix {@const} tag not working inside a component when there's no let: #7189
    • Remove extraneous leading newline inside <pre> and <textarea> (#7264)
    • Fix erroneous setting of textContent for \<template> elements (#7297)
    • Fix value of let: bindings not updating in certain cases (#7440)
    • Fix handling of void tags in <svelte:element> (#7449)
    • Fix handling of boolean attributes in <svelte:element> (#7478)
    • Add special style scoping handling of [open] selectors on <dialog> elements (#7495)
    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 19
  • React: <BuilderComponent> doesn't rerender when user attributes change

    React: doesn't rerender when user attributes change

    We have a basic Builder component:

    <BuilderComponent model="home-pages" />
    

    If we call builder.setUserAttributes before this renders, it will pass the correct attributes to the Builder API and render the correct content.

    If we then call builder.setUserAttributes after this renders (e.g. if the user signs in), it doesn't show the new content.

    Problem 1: Builder doesn't fetch new content from the API. We can tell this is a problem because there's nothing in the network tab when we call builder.setUserAttributes.

    Problem 2: Builder fetches new content from the API, but the component doesn't update. We can tell this is a problem because even if we manually fetch new content and pass it into <BuilderComponent>, it doesn't update:

    // doesn't work:
    function MyComponent() {
      const [content, setContent] = useState(null)
    
      useEffect(() => {
        builder.get('home-pages').promise().then(setContent)
      })
    
      return <BuilderContent model="home-pages" content={content} />
    }
    
    // works:
    function MyComponentWithKeyUpdate() {
      const [content, setContent] = useState(null)
    
      useEffect(() => {
        builder.get('home-pages').promise().then(setContent)
      })
    
      return <BuilderComponent model="home-pages" content={content} key={content.id} />
    }
    
    opened by jamesarosen 17
  • Builder page is not editable on first load

    Builder page is not editable on first load

    We are using builder to manage a content section on pages within our app. When we load a builder page, we also load our app into the editor so we can full WYSIWYG experience.

    However, when we first load the builder page into your editor, it takes several refreshes for the builder page to become editable.

    bug 
    opened by JefferyReidKnowde 14
  • not able to track abtest impression data in Angular

    not able to track abtest impression data in Angular

    tried to follow this:
    https://forum.builder.io/t/tracking-builder-data-to-other-analytics-providers/160

    but the fields specified in the post are not available on Angular's $event object passed back in the load event: image

    opened by that70schris 13
  • Cannot see added components in page

    Cannot see added components in page

    Since https://github.com/BuilderIO/builder/commit/8a910d7ce53c8e3b184a14d8f7661bab5e6cbfda, I'm unable to see components I add to some (not all) pages. I haven't narrowed down why, but downgrading fixed the issue.

    image

    image

    opened by kevva 11
  • Builder page content not rendering everything

    Builder page content not rendering everything

    Issue

    This is in the @builder.io/[email protected] build. It looks like now the Builder page on our site is not rendering everything that's published in the dashboard page

    In Builder

    Screen Shot 2019-11-21 at 8 59 42 AM

    Our site (running locally)

    Screen Shot 2019-11-21 at 9 00 12 AM

    It seems like it was working fine for a little bit, but not sure if you pushed any updates to the dev build that might be causing this.

    opened by tedlin182 10
  •  Module '

    Module '"http"' has no exported member 'ServerRequest'.

    Hi, I get the following issue when trying to serve an angular application after importing BuilderModule in angular. It happens when using it in existing Angular 8 and also in a fresh Angular 9 app.

    ERROR in node_modules/@builder.io/sdk/dist/src/builder.class.d.ts:2:10 - error TS2305: Module '"http"' has no exported member 'ServerRequest'. I had a look around and found one issue on a different project that seems to be similar

    opened by rp3e11 9
  • @builder.io/sdk-react: NextJS: failure to load in SSR

    @builder.io/sdk-react: NextJS: failure to load in SSR

    Describe the bug When using the recently released Beta React SDK @builder.io/[email protected] with Next.js and Next.js throws and error Server Error SyntaxError: Cannot use import statement outside a module when trying to server-side render the builder RenderContent component.

    image

    To Reproduce Stackblitz

    Expected behavior We can use the builder SDK with SSR (eventually we will want to use server component with the SDK)

    Additional context one workaround to is only render the Builder component on the client.

    Thanks for the help! I'm excited to see that the bundle size is only 13 kB. Seems more reasonable.

    bug 
    opened by charkour 7
  • Add Kontent data plugin

    Add Kontent data plugin

    Description

    Hello, I am a DevRel Leader with Kontent.ai headless CMS. I have tried to create a data plugin for our headless CMS similar you for Contentful and Contentstack.

    I tried to find some resources and documentation to the registerDataPlugin what to provide, what are the possibilities etc.

    I have drafted a skeleton based on existing implementations, but I struggle with the API contract. It should be fairly easy to fill the implementation skeleton if I have more info and even have some guide on how to test the plugin.

    Would you be willing to get in touch and discuss the further steps?

    Currently, I have used REST API to fetch the data, but it is also possible to switch to GraphQl.

    opened by Simply007 7
  • Error when running in latest Next.js version with middleware

    Error when running in latest Next.js version with middleware

    On Next.js v12, you'll get this when adding middleware to your app:

    `eval` not allowed in Middleware pages/_middleware
    error - node_modules/@builder.io/sdk/dist/index.esm.js?b22a (919:0) @ <unknown>
    TypeError: Cannot read property 'parse' of null
    

    This points to this line which makes use of serverOnlyRequire. The problem is that that function makes use of eval to detect require and since Next.js doesn't allow eval in middleware it'll throw no matter what so I think another non-eval check is needed.

    opened by kevva 7
  • App can't get stable with Angular 9

    App can't get stable with Angular 9

    Using "@builder.io/angular": "1.1.13" it seems that our app can't get stable anymore when subscribing to it : https://angular.io/api/core/ApplicationRef#isStable

    While digging into it, I discovered that there was a pending macrotask triggered by builder-component ( blocking the stable flag to turn to true ) Screenshot 2020-07-23 at 16 31 52

    When comparing to previous versions, it seems that this comes from here : https://github.com/BuilderIO/builder/blob/52d8d231f01fbcc2b9670368a47acdda57c1b349/packages/angular/src/app/modules/builder/directives/builder-content.directive.ts#L233

    Previous Behavior :

    This will create two macro tasks & two listeners, subscribed and on next event , one will cancel & invoke the task while the other resolve and invoke the task.

    Current Behavior :

    This seems to create two macro tasks but only one listener, subscribed and on next event, only the listener will resolve and invoke the task. Leaving the other macrotask unresolved.

    opened by ghost 7
  • Bump jose from 2.0.5 to 2.0.6 in /examples/embed-starter-kit/admin

    Bump jose from 2.0.5 to 2.0.6 in /examples/embed-starter-kit/admin

    Bumps jose from 2.0.5 to 2.0.6.

    Release notes

    Sourced from jose's releases.

    v2.0.6

    Fixes

    • limit default PBES2 alg's computational expense (c1512be)
    Changelog

    Sourced from jose's changelog.

    2.0.6 (2022-09-01)

    Bug Fixes

    • limit default PBES2 alg's computational expense (c1512be)
    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 1
  • Bump jszip from 3.5.0 to 3.10.1 in /examples/angular-universal

    Bump jszip from 3.5.0 to 3.10.1 in /examples/angular-universal

    Bumps jszip from 3.5.0 to 3.10.1.

    Changelog

    Sourced from jszip's changelog.

    v3.10.1 2022-08-02

    • Add sponsorship files.
      • If you appreciate the time spent maintaining JSZip then I would really appreciate your sponsorship.
    • Consolidate metadata types and expose OnUpdateCallback #851 and #852
    • use const instead var in example from README.markdown #828
    • Switch manual download link to HTTPS #839

    Internals:

    • Replace jshint with eslint #842
    • Add performance tests #834

    v3.10.0 2022-05-20

    • Change setimmediate dependency to more efficient one. Fixes Stuk/jszip#617 (see #829)
    • Update types of currentFile metadata to include null (see #826)

    v3.9.1 2022-04-06

    • Fix recursive definition of InputFileFormat introduced in 3.9.0.

    v3.9.0 2022-04-04

    • Update types JSZip#loadAsync to accept a promise for data, and remove arguments from new JSZip() (see #752)
    • Update types for compressionOptions to JSZipFileOptions and JSZipGeneratorOptions (see #722)
    • Add types for generateInternalStream (see #774)

    v3.8.0 2022-03-30

    • Santize filenames when files are loaded with loadAsync, to avoid "zip slip" attacks. The original filename is available on each zip entry as unsafeOriginalName. See the documentation. Many thanks to McCaulay Hudson for reporting.

    v3.7.1 2021-08-05

    • Fix build of dist files.
      • Note: this version ensures the changes from 3.7.0 are actually included in the dist files. Thanks to Evan W for reporting.

    v3.7.0 2021-07-23

    • Fix: Use a null prototype object for this.files (see #766)
      • This change might break existing code if it uses prototype methods on the .files property of a zip object, for example zip.files.toString(). This approach is taken to prevent files in the zip overriding object methods that would exist on a normal object.

    v3.6.0 2021-02-09

    • Fix: redirect main to dist on browsers (see #742)
    • Fix duplicate require DataLengthProbe, utils (see #734)
    • Fix small error in read_zip.md (see #703)
    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 1
  • ENG-2956 Honor custom breakpoints, if available, when rendering content

    ENG-2956 Honor custom breakpoints, if available, when rendering content

    Description

    When custom break-points are available in content data, re-initialize size constants, from builder-component 's constructor with supplied values. This is so that the corresponding rendering flow can proceed w/o any further changes.

    • A content json can have custom breakpoints specified at content.data.breakpoints content.data.breakpoints = {small: , medium: }

    React SDK: Honor custom breakpoints when rendering content

    Note: App level changes to save breakpoint data in content is yet to be done.

    opened by murtaza-builder 2
  • Add get all content

    Add get all content

    Description

    This is a helper function to fetch content with nested refs such as direct model reference or reference list.

    Example: ModelC { name: '' } Model B { themeName: reference to model C }

    ModelA { colorsList: [Reference to model B, Reference to model B] }

    This function when called should get all values for all nested refs. In the example above should get the values for the list of references to ModelB and and the actual data for ModelC

    Added a new file to handle the entire function.

    opened by gustavocodess 3
  • chore(deps-dev): bump vite from 2.9.8 to 2.9.13 in /packages/sdks/output/solid

    chore(deps-dev): bump vite from 2.9.8 to 2.9.13 in /packages/sdks/output/solid

    Bumps vite from 2.9.8 to 2.9.13.

    Changelog

    Sourced from vite's changelog.

    2.9.13 (2022-06-27)

    2.9.12 (2022-06-10)

    • fix: outdated optimized dep removed from module graph (#8534) (c0d6c60), closes #8534

    2.9.11 (2022-06-10)

    2.9.10 (2022-06-06)

    2.9.9 (2022-05-11)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 1
The most powerful headless CMS for Node.js — built with GraphQL and React

A scalable platform and CMS to build Node.js applications. schema => ({ GraphQL, AdminUI }) Keystone Next is a preview of the next major release of Ke

KeystoneJS 6.9k Sep 20, 2022
ApostropheCMS is a full-featured, open-source CMS built with Node.js that seeks to empower organizations by combining in-context editing and headless architecture in a full-stack JS environment.

ApostropheCMS ApostropheCMS is a full-featured, open source CMS built with Node.js that seeks to empower organizations by combining in-context editing

Apostrophe Technologies 3.9k Sep 24, 2022
ApostropheCMS is a full-featured, open-source CMS built with Node.js that seeks to empower organizations by combining in-context editing and headless architecture in a full-stack JS environment.

ApostropheCMS ApostropheCMS is a full-featured, open source CMS built with Node.js that seeks to empower organizations by combining in-context editing

Apostrophe Technologies 3.9k Sep 24, 2022
👻 The #1 headless Node.js CMS for professional publishing

Ghost.org | Features | Showcase | Forum | Docs | Contributing | Twitter Love open source? We're hiring Node.js Engineers to work on Ghost full-time Th

Ghost 41.1k Sep 21, 2022
A Node.js CMS written in CoffeeScript, with a user friendly backend

Nodizecms A Node.js CMS written in CoffeeScript, with a user friendly backend Status NodizeCMS is still under heavy development, there's a ton of unim

Nodize CMS 175 Jul 15, 2022
🚀 Open source Node.js Headless CMS to easily build customisable APIs

API creation made simple, secure and fast. The most advanced open-source headless CMS to build powerful APIs with no effort. Try live demo Strapi is a

strapi 47.9k Sep 23, 2022
👻 The #1 headless Node.js CMS for professional publishing

Ghost.org | Features | Showcase | Forum | Docs | Contributing | Twitter Love open source? We're hiring Node.js Engineers to work on Ghost full-time Th

Ghost 37k Apr 5, 2021
Minimalistic, lean & mean, node.js cms

enduro.js Enduro is minimalistic, lean & mean, node.js cms. See more at enduro.js website Other repositories: Enduro • samples • Enduro admin • enduro

Martin Gottweis 689 Aug 19, 2022
The official CMS of OwnStore suite.

This project is part of OwnStore suite. Learn more here: https://ownstore.dev The suite contains the following projects: Website API CMS Doc Apps TWA

OwnStore 13 Aug 26, 2022
Advanced Opensource Status Page Solution for Everyone with Simple Admin Dashboard.

About UpStats There are many great Opensource, Hosted Solutions for Status Page, however, I didn't find one that really suit my needs so we created th

UpStats 31 Jul 19, 2022
Reaction is an API-first, headless commerce platform built using Node.js, React, GraphQL. Deployed via Docker and Kubernetes.

Reaction Commerce Reaction is a headless commerce platform built using Node.js, React, and GraphQL. It plays nicely with npm, Docker and Kubernetes. G

Reaction Commerce 11.8k Sep 25, 2022
Tina is an open source editor that brings visual editing into React websites. Tina empowers developers to give their teams a contextual and intuitive editing experience without sacrificing code quality.

Tina is an open source editor that brings visual editing into React websites. Tina empowers developers to give their teams a contextual and intuitive editing experience without sacrificing code quality.

Tina 7.8k Sep 19, 2022
FOSS app for the Diatum self-hosting network, supporting messaging and media sharing.

FOSS app for the Diatum self-hosting network, supporting messaging and media sharing.

Roland Osborne 21 Jul 30, 2022
Make drag-and-drop easier using DropPoint. Drag content without having to open side-by-side windows

Make drag-and-drop easier using DropPoint! DropPoint helps you drag content without having to open side-by-side windows Works on Windows, Linux and Ma

Sudev Suresh Sreedevi 344 Sep 20, 2022
🔖 A drag-and-drop form builder for Bootstrap 4.

Bootstrap v4 Form Builder A drag-and-drop form builder for Bootstrap 4. ❓ Get Help There are few ways to get help: Please post questions on Stack Over

Bloggify 105 Sep 21, 2022
A Drag & Drop Form Builder base on Bootstrap v4.x

bsFormBuilder 一个基于 Bootstrap (v4.x) + JQuery 的、拖拽的表单构建工具。 特点 1、基于 Bootstrap (v4.x) + JQuery,简单易用 2、拖动的 html 组件,支持通过 Json 自定义扩展 3、组件的属性面板,支持通过 Json 自定义

Michael Yang 10 Aug 25, 2022
基于vue3.0-ts-Element集成的简洁/实用后台模板!《带预览地址》vue-admin;vue+admin;vue-element;vue+element;vue后台管理;vue3.0-admin;vue3.0-element。

一、基于vue3.0+ts+Element通用后台admin模板 二、在线预览地址:http://admin.yknba.cn/ 三、下载使用: 1、克隆代码 通过git将代码克隆到本地;或者使用下载安装包模式进行下载。 2、进入目录 进入项目的根目录:vue3.0-ts-admin 3、安装依

null 61 Sep 21, 2022
Beautiful and accessible drag and drop for lists with React

react-beautiful-dnd (rbd) Beautiful and accessible drag and drop for lists with React Play with this example if you want! Core characteristics Beautif

Atlassian 28k Sep 20, 2022
Drag and Drop for React

React DnD Drag and Drop for React. See the docs, tutorials and examples on the website: http://react-dnd.github.io/react-dnd/ See the changelog on the

React DnD 18.2k Sep 23, 2022