Code Monkey home page Code Monkey logo

openchakra's Introduction

Openchakra: Visual editor for Chakra UI.

Visual Editor for Chakra UI

OpenChakra is a visual editor for the best component library in town: Chakra UI 🤗. Quickly draft components with the simple drag and drop UI.

👉 https://openchakra.app

Features

  • 🎨 Drag and drop Chakra UI components
  • 💅 Preset components
  • 👀 Live props editing and styling
  • ⚛️ Production-ready code
  • 🎈 CodeSandbox export
  • 🔮 Undo/redo edit
  • 💽 Localstorage sync

Screenshot

Getting started

Builder mode

The Builder mode adds extra padding/border to ease components selection (like containers).

💡Toggle the Builder mode with the b shortcut

Code panel

Toggle the code panel for viewing the JSX/React code of your components. You can even export your code directly to CodeSandbox!

💡Toggle the Code panel with the c shortcut

Components panel

Drag any component from the left hand panel into this editor. Then start interacting with them. You can drag a preset: it's a group of components (like Alert). Just drop a preset to easily setup a complex component!

Inspector

Update props & style

On the right hand-side, you can find the inspector panel. You will find the tools to edit the component's props and style.

Delete, reset and documentation

Reach the yellow bar on the top to delete, reset and access the Chakra documentation of each component.

Sort components

By clicking on a component containing children, you will see a Children panel appearing on the right. It enables sorting the children.

Editor Shortcuts

Shortcut Description
cmd+Z ctrl+Z Undo last action
cmd+Y ctrl+y Redo action
cmd+D ctrl+d Duplicate component
del Delete selected component
c Toggle Code panel
b Toggle Builder mode
p Select parent component
Esc Unselect component

Roadmap

  • More Chakra UI components integration
  • Components copy
  • Props panel improvements
  • Code generation improvements
  • Dark mode support
  • Custom presets
  • Custom theme
  • Handle PseudoBox state (hover, active…)
  • Fix bugs 🧨
  • Support other UI (Material, Reakit...)

Contributors

This project is being developed by Premier Octet, a Web and mobile agency specializing in React and React Native developments.

Code Contributors

This project exists thanks to all the people who contribute. [Contribute].

Financial Contributors

Become a financial contributor and help us sustain our community. [Contribute]

Individuals

Organizations

Support this project with your organization. Your logo will show up here with a link to your website. [Contribute]

openchakra's People

Contributors

baptadn avatar foyarash avatar franky47 avatar hampuskraft avatar monkeywithacupcake avatar pgrimaud avatar pierrecrb avatar pushpinder107 avatar tlenclos avatar tomayac avatar ubmit avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

openchakra's Issues

[feature-request] Add zooming capability.

This is an awesome project. There's no doubt about it, this is where React should go next.

I am trying it out to build a small hobby project and I want to try out how easy it is to make responsive components. The issue is that the builder UI currently has no option to zoom the view port. Zoom is very important when we're trying to make components responsive from mobile to 4k screens. If I create a Box component with a dimension that's bigger than my screen, there's actually no way to preview it on openchakra without getting a bigger screen.

Thanks <3

Code generation bug

2021-01-19.16.13.15.mov

I am still very new to the project, so I’ll hardly be able to fix it myself

Unable to recover lost elements (CTRL + Z/Y)

Hey guys, I'm unable to recover most of the elements that I change or delete with Ctrl+Z I can only do up to one level, but that's it, it won't let me recover more than one deleted element.

Feature Request: Plugins for other component libraries

It would be really nice if we can have the ability to load plugins that provide components from other libraries such as AntD or Materialize or react-bootstrap etc.

I actually forked and started converting all components to AntD, then realized a lot of the code is very generic. Would be awesome if there were just a few interfaces to implement to provide a component library and load as an npm module.

Custom Props always quoted?

Hi,

I just started using OpenChakra and it's awesome, thanks for making it!

I was wondering if it was intended that all custom props are always quoted by default. This way it's not possible to insert pure javascript through curly brackets. My onClick functions always end up looking like onClick: "{doClick}" instead of onClick: {doClick}

Thanks for the attention,
Normen

Migrate from CRA to Next.js

The next features will introduce server side operations (GitHub, login, repo synchronisation...) so we have to migrate on a fullstack framework, hello Next.js 👋

The goal of this issue is to simply migrate our actual CRA stack to Next.js. We need to move from Netlify to Vercel too.

Duplicate Min H and Min W

In the UI it shows a duplicate 'Min H' and 'Min W', but I believe one should be 'Max H' and 'Max W', right?

Screen Shot 2020-03-28 at 3 12 35 PM

Applications and motivation?

Hi @shinework - first, thanks to you and your team for making this, I first learned about it from HN a while ago. I have a general question - please let me know if you prefer discussing somewhere else.

What do you (the original Premier Octet team that created this tool) use this tool for, and how do you use it? For instance, do you have a designer on your team who mocks up screens (built using the design system components), and provide that as a starting point for developers, so that you reduce the handoff process? Or is this a tool that your developers as a substitute for writing the initial JSX/CSS?

What do you see as the main benefit you experienced from this tool?

I really believe in this space, but I would love to hear as much as you can share about your own perspective. Thank you!

Is openchakra being developed?

openchakra is a wonderful piece of software and would really be interested in #71, and to be able to easily extend it with custom components, but there seem to be no active development lately.

So, @shinework what is the status of openchakra? Can we expect new releases?

Feature Request: Store custom props in side panel

Sometimes I want to inject custom props into a component, however, the current system of the single box that doesn't show current custom props, only lets you add them, is difficult to use and hard to work with for a large project.

Could we do something like this, where we could see all of our custom props and have two text boxes for each prop:
demo image

❤️

Feature Request: Add typescript code generation.

Please add typescript support.
I see that this repo/OpenChakra is made using next.js and typescript and OpenChakra is really great and with typescript code generation, it will surely help a lot of people.

Can you start a patreon or a way to sponsor this project?

Openchakra is amazing. It's allowed me to speed up my workflow by multiple orders of magnitude. I've even begun using this for my actual work, and have been loving it!

However, I worry that this project may stop being mantianied or be forgot about, and to encourage and ensure its basic maintaining, I would love to support this project on OpenCollective or sponsor it or something else.

Is there anyway you could start a way for us to donate to this amazing project?

feature request: Double click to edit text

Hi @PierreCrb !

Great work with OpenChakra! Love it.

One challenge I just noticed was that I'm unable to edit text in components when I double click the text.

Would be an interesting feature to add. I know this can be done by editing the text field on the right hand side panel. But would be even better to edit directly on the canvas.

image

Grid support

Grid along with flex has become core tools when it comes to designing pages. It would be super cool if support can be added for the standard grid properties in the layout section

v1 or v0.x support?

Hi folks! great project!

just wanted to suggest that you could be clear about whether or not you support the upcoming 1.0 version or not.

thank you!

Change items by dragging elements positions

First of all, thanks for creating OpenChakra! I'm using it right now and it feels nice. Although, I have a small suggestion to editor UX.

Right now I can only change items order using a right bar panel, but I'd like it to be an easier process, by just dragging it and it will automatically lock to a position.

Code / storybook export on GitHub repository

We're going to give the user the ability to connect to GitHub (thanks to https://github.com/nextauthjs/next-auth) and save its components in a repository. The user should be able to save the JSX code on a GitHub repo (we can also save the json). A storybook will be automatically created if the user has created some "named" components.

The repository should be easily publishable on services like Netlify / Vercel (CRA?).

The key idea behind these developments is to ease high level component creation/share (like https://tailwindui.com from tailwind css)

Can't put anything inside a TabPanel

  1. Visit https://openchakra.app/
  2. drag "Tabs (preset)" onto the grid
  3. try to drag anything, e.g. Input, into the TabPanel that says "One !"
  4. observe the new component getting inserted into TabPanels, not one TabPanel
    <Tabs size="md">
      <TabList>
        <Tab>One</Tab>
        <Tab>Two</Tab>
      </TabList>
      <TabPanels>
        <TabPanel>One !</TabPanel>
        <TabPanel>Two !</TabPanel>
        <Input />
      </TabPanels>
    </Tabs>

using zero-runtime or build time css solution.

I would like to thank first for this library.

Lately i started to see some runtime cost of having much complexly composed css. And also i saw this doc.

Please let me know if its possible to use something like compiled-css or linaria to remove that runtime.

I love this library so much that i like to contribute adding this feature.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.