7
16 Comments

How to create a website builder?

Hi,

I wanted to try my hand at creating my own website builder as a fun project. Just a basic one that pretty much let's you choose between different sections, fonts, colours, etc. Was just wondering what tech stack would you recommend to build this?

I'm mainly a python dev with a bit of java script. I'm not too familiar with front end frameworks so was hoping to get some advice on what would be best suited for this.

on July 10, 2021
    1. 1

      Ah haven't heard of grape.js before. Will have to give that a try. Thanks

  1. 1

    We did this at Enshelf, which is meant to automate the CRM process. We added a single landing page builder as a bonus for easy lead acquisition.

    It is built upon the React framework and Node.js though we did build a very simple NextJS app for server-side rendering; which you can currently see if you add a custom domain. We are currently validating the idea by allowing only single pages which can, of course, be linked together to create a smoother navigation experience.

    The whole app is planned for porting to NextJs, as plain React is too much trouble these days. Adding custom domains with SSL management only takes around 10 lines of code, but you will need a backend server for that.

    Data is saved as JSON and will be transformed to HTML and CSS as required.

    Then something for your media store, in our case AWS S3. Don't allow users to upload custom image links (at least, not without vetting), as it easily opens an attack vector. Instead, upload those on your own server and send them the URL.

    I would have loved to share code fragments, however, it is not open-source. However, if you need to ask further questions, I am more than happy to answer those.

  2. 1

    We launched Lempis a couple of weeks ago and our website builder for businesses went live three days ago (finally!).
    For our website builder, we used HTML/CSS and JavaScript for the front end and PHP for the back end. A bit unconventional these days with all the other hit technologies around, but PHP was the programming language I'd felt most comfortable with beforehand and it definitely comes in handy when handling websites (even WordPress is built in PHP, after all), so I would encourage you to at least look into that.
    At the moment, we offer templates for different businesses, but in the future, we might also build a clean template which will enable users more freedom at creating the looks and feels of their website. For this, I expect we'll have to resort to using more JS, but like fastur said, working with a framework like React can get quite messy so we will probably keep away from that.
    Do try out our website builder here, you can try it for free! Currently, we only have three templates online, but we're going to add more very soon.
    Just reply if you have any questions, will gladly answer!

    1. 1

      Ah that's pretty cool, you are actually going for something very similar to what I am trying to do. My target audience would be restaurants as well.

      I am actually surprised that a few people have recommended going without a framework. I have always gone for frameworks because I thought they were supposed to make life easier but I generally do get lost in a sea of code.

      Thanks for sharing your project ๐Ÿ™‚

  3. 1

    I am looking to add a plug-in which when I post on my blog will automatically post to the respective Facebook and Twitter accounts. Any suggestions??
    my site: https://themarketingtrendz.com

  4. 1

    I always wondered how do you handle custom domain name registration
    for example, if i have a domain name and i like to connect it to my landing page
    how can i do it without manually redirect it to the sub domain of the landing page Saas

    1. 1

      I think you have to do it with a CNAME Record.
      It still redirects to a subdomain, but you can change the Subdomain whenever you need.

  5. 1

    I'm building one right now (who isn't right?). And it's React with Firebase for auth and drafts storage and then the website gets published as static html to a Google Cloud bucket with a load balancer in front of it. Took a while to figure out the perfect fit for my needs and set everything up but I love it so fat.

    1. 1

      Yeah seems to be a lot of people trying to do it. Thanks for sharing your tech stack. I have a lot of different technologies to look at ๐Ÿ˜

  6. 1

    Any front-end framework should work fine for this, but I'd personally choose React for it's large ecosystem of libraries. There's actually a React library for building drag and drop website builders at https://craft.js.org (haven't used it yet, but I'm considering porting my website builder over to it).

    1. 2

      I haven't tried react before but seems to be the biggest fronted framework so definitely worth giving it a look. Thanks for the head up, much appreciated

  7. 2

    This comment was deleted 5 years ago

    1. 1

      Wow that is actually dead handy, thank you so much for sharing your project. From looking at your GitHub it looks like you only started this 2 weeks ago. It's impressive how much you have gotten done in such a short time. This will be a great help for me getting started.

      Yeah, I think for the start I will aim just for being able to select between a few pre-made templates where text and images can be customised.

      Out of curiosity, why would using react make it more complicated and would it be better to use another one like vue or angular?

      1. 1

        This comment was deleted 5 years ago

        1. 1

          Yeah that's a good point. It would probably be easier for me to build my own render function that just takes care of the basics rather than trying to understand a really complicated one that has more than what I need for my purposes. I suppose I will give both methods a try and see which works best for me.

          Thanks for the advice, much appreciated ๐Ÿ™‚

      1. 1

        Thank You for the kind words!