app-generator / free-site-builder

Free Site Builder - Open-Source Tool | Simpllo

Home Page:https://www.simpllo.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Free & Open-Source Site Builder that uses Vanilla JS and a Remote Server for components injection - Actively supported by AppSeed.

Free & Open-Source Website Builder - Actively Supported by AppSeed.


Roadmap & SPECS

Status Item info
βœ… Core Vanilla JS
βœ… Components/KIT Bootstrap 5
βœ… Components/KIT Pixel BS5
βœ… Components/KIT Volt BS5
βœ… Components/KIT Bootstrap 5
βœ… Remote Components Server https://components-server.onrender.com/kits/bs5/
βœ… Persistence (local storage) Save, Restore, Clear
βœ… One-Page Layout Single Component Drag & Drop
βœ… Component Customization Text-Only
βœ… Grid Components This allows to inject predefined rows (2,3,4 columns)
βœ… USE Remote Components Yes
βœ… Component Customization Texts, Links
βœ… Component Customization Images
βœ… Component Styling CSS, Classes
βœ… PAGE Customization CSS
βœ… PAGE Customization JS
βœ… Manage SEO Title, Description, Keywords
βœ… Handle Multiple Pages YES

Compile the Builder

Tested with Node 16.x, 18.x.

$ git clone https://github.com/app-generator/free-site-builder.git
$ yarn
$ yarn dev # development (LIVE Reload)

Components Server (distant)

Managed by Flask (optional). By default, a LIVE Components Server is used.

$ cd free-site-builder/backend
$
$ virtualenv env
$ # Or
$ python -m venv env 
$
$ source env/bin/activate  # Linux
$ # Or
$ .\env\Scripts\activate   # Windows
$
$ pip install -r requirements.txt
$ flask run --debug

Here is the output:

  • http://localhost:5000/
  • http://localhost:5000/kits/, returns available KITS
    • 'material-kit'
    • 'kit2'
  • http://localhost:5000/kits/material-kit/, return Material Kit assets
{
    "name": "Material Kit BS5 ",
    "version": "0.0.0",
    "type": "kit",
    "material-kit": {
        "layouts": "base.html",
        "components": {
            "footers": {
                "footer.html": "NA"
            },
            "headers": {
                "header.html": "NA"
            },
            "navigation": {
                "navigation.html": "NA"
            },
            "general": {
                "section1.html": "NA"
            }
        }
    }
}

Add new component

  • Navigate to backend/apps/templates/bs5/components
  • create the component like footer.html
  • Edit the file and add the HTML code
  • Compute the Base64 hash using service:
  • Update info.json and add the new component using existing category or a new one
    • Syntax:
... (truncated) ...
        "components": {
            "footer": {
                "footer.html": "BASE64_Hash HERE"
            }, 
        }   
... (truncated) ...         

NOTE: The UI Builder uses the local storage to cache the info.json pulled from the server.

In order to have the latest version, please open an incognito window or clean manually the data from the local storage.


For more information, contact AppSeed support@appseed.us.



Free Site Builder - Provided by AppSeed.