Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

javascript drag and drop page builder

I'm in the process of building an A4 size drag and drop page builder. The elements this builder can contain are images and text boxes.

I am after for some advice on what frameworks are available that can be used to build this type of front-end functionality.

Example of what I'm after, see here canva.com

The two frameworks I tried are so far are fabric js and greensock draggable, which didn’t meet my needs or are pretty difficult to create a complete page builder.

ideally i don't want to use canvas for this.

edit: Basic Feature:

  • cropping
  • rotation
  • re-sizing
  • change font style/color/size for textboxes
  • add backgrounds
  • frames/ masking images (square image can become star shape with a overlay)
like image 308
TheDeveloper Avatar asked Jan 27 '16 19:01

TheDeveloper


People also ask

What is the easiest drag and drop website builder?

Wix: Best Drag-and-Drop Page Builder for Beginners Out of the box, Wix provides you with a long list of modules and styling options so you can quickly create the exact website you're looking for.

What is a drag and drop website builder?

A drag and drop website builder is a tool that allows anyone with a computer and internet connection to create a website. It doesn't require you to write code or learn a single command in CSS. All you have to do is select a basic layout (or theme), and drag pre-set elements to where you want them on each page.

What is grape JS?

GrapesJS is an open-source, multi-purpose, Web Builder Framework which combines different tools and features with the goal to help you (or users of your application) to build HTML templates without any knowledge of coding.


1 Answers

As of my understanding you want to create dashboard which can be configurable. I would suggest use a table structure Table merge and split in which each cell should have a dropable component like

<table id="mainTable">
                    <tbody>
                        <tr>
                            <td class="set-as-droppable"></td>
                            <td class="set-as-droppable"></td>
                            <td class="set-as-droppable"></td>
                            <td class="set-as-droppable"></td>
                        </tr>
                        <tr>
                            <td class="set-as-droppable"></td>
                            <td class="set-as-droppable"></td>
                            <td class="set-as-droppable"></td>
                            <td class="set-as-droppable"></td>
                        </tr>
                    </tbody>
                </table>

Like

Then on drop write your own logic

$( ".set-as-droppable" ).droppable({
        accept: "div.Dragable",
        drop: function( event, ui ) {

}
}); 

And dragable component can be TEXT or IMAGE and on drop you can give any operation

like image 103
Mritunjay Avatar answered Sep 29 '22 11:09

Mritunjay