Skip to content

Create an online logo designer using Gravity Forms and JetSloth Add-ons

A wonderful customer of ours reached out recently asking a question about a previous tutorial we created some time ago – Build a Product Configurator With Gravity Forms. They wanted to (what sounded like) build a basic logo or design creator for their website. This instantly sparked the concept of could we build a basic logo or company brand mark designed within Gravity Forms, using our add-ons. Presenting Create an online logo designer using Gravity Forms and JetSloth Add-ons! There are a few things under the hood here, so let’s break them down.

Create an online logo designer using Gravity Forms and JetSloth Add-ons
What you'll be creating

The below designs and CSS examples were tested in Gravity Forms version 2.6.6 with the default WordPress 2022 theme installed. These demos only support Gravity Forms 2.6.6+. Depending on the theme you are using, you may get different end results. Some basic further CSS tweaking will likely be required to get the result you want. Using older versions of Gravity Forms will most likely lead to unwanted end results.

 

Online logo designer using Gravity Forms and JetSloth Add-ons

With a bit of creativity, and JetSloth’s Image Choices and Color Picker add-ons for Gravity Forms, we’ve come up with a super stylish and modern logo creator. Below is everything you need to replicate this demo and tutorial. Be sure to read the notes on things to look out for to get the best result on your website.

Logo Creator
Select Symbol
Edit your company name to represent your company logo and brand mark.
ColorPick color
ColorPick color
ColorPick color

Gravity Forms Logo Designer

With the most recent CSS tutorial and article we recently published, we had great feedback from users, so we wanted to do more for the Gravity Forms community. We’re pretty chuffed to release our biggest custom Gravity Forms designs with CSS demos for you all to use!

Form Downloads

This demo comes with a packaged form download. All you need to do is download the form JSON file, and import it into your gravity Forms. If you’re already a JetSloth customer and using Image Choices, the demo form export has the CSS already included in the image choices custom CSS settings. So take advantage of that!

Download Form

 

Adding the CSS

The required CSS is supplied below. If you’re not already using Image Choices, you can add the custom CSS to your theme in a few ways suggested below:

/*Import google font - Montserrat*/
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@800&display=swap');
/*Form outside wrapper styles*/
.gform_wrapper.logo-creator_wrapper {
    background: #FFFFFF;
    border: 2px solid #1D1D1F;
    box-shadow: 5px 5px 0 0 #000000;
    border-radius: 5px;
    position:relative;
}
.gform_wrapper .logo-creator input[type="text"] {
    background: #FFFFFF;
    border: 2px solid #1D1D1F;
    box-shadow: 5px 5px 0 0 #000000;
    border-radius: 5px;
    position: relative;
    padding: 15px;
    color: black;
    font-weight:500;
}
.gform_wrapper.logo-creator_wrapper input[type="text"]:focus {
    outline:none;
}
/*Form heading*/
.gform_wrapper.logo-creator_wrapper .gform_heading {
    position: absolute;
    right: 0;
    top: 0;
    z-index: 2;
    background: black;
    color: white;
    padding: 2px 20px;
}
.gform_wrapper.logo-creator_wrapper h2.gform_title {
    font-family: system-ui,-apple-system,Segoe UI,Helvetica,Arial, sans-serif;
    font-size: 13px;
    letter-spacing: -0.25px;
    text-align: right;
    line-height: 13px;
    font-weight: bold;
}
/*h2 Styles*/
.gform_wrapper .logo-creator .gfield_html h2 {
    font-family: system-ui,-apple-system,Segoe UI,Helvetica,Arial, sans-serif;
    font-size: 19px;
    color: #1D1D1F;
    letter-spacing: -0.38px;
    line-height: 28px;
    font-weight:bold;
}
/*text styles*/
.gform_wrapper .logo-creator .text  {
    font-family: system-ui,-apple-system,Segoe UI,Helvetica,Arial, sans-serif;
    font-size: 12px;
    color: #1D1D1F;
    font-weight: 500;
    line-height: 20px;
    padding: 40px 0 10px 40px;
    border-top: 2px solid #1D1D1F;
}
/*Artboard styles and is hidden*/
.gform_wrapper .logo-creator .artboard{
    background: #00FFE5;
    max-height: 450px;
    min-height: 450px;
    display: flex;
    flex-direction: row-reverse;
    flex-wrap: nowrap;
    justify-content: center;
    align-content: stretch;
    align-items: flex-start;
    margin-left:-9999px;
    width: 100%;
    position: absolute;
}
/*Preview layer styles*/
.gform_wrapper .logo-creator .result {
    position:relative;
}
.gform_wrapper .logo-creator .result canvas {
    margin: 0;
    display: block;
    border-bottom: 2px solid black;
}
.gform_wrapper .logo-creator .result:before {
    background: white;
    content: "#RightClickSave";
    font-size: 10px;
    color: black;
    font-weight: bold;
    border: 2px solid #1D1D1F;
    box-shadow: 5px 5px 0 0 #000000;
    border-radius: 6px;
    position: absolute;
    right: 40px;
    bottom: 50px;
    padding: 3px 8px;
    z-index: 9999;
}
.gform_wrapper .logo-creator .artboard .logo-name {
    order: 0;
    flex: 0 1 auto;
    align-self: center;
    font-family: 'Montserrat', sans-serif;
    font-size: 25px;
    color: white;
    letter-spacing: 0;
    line-height: 27px;
    max-width: 260px;
    background: #1D1D1F;
    border-radius: 3px;
    margin-left: 5px;
    padding: 3px;
}
/*Preview image 1 */
.logo-creator .artboard .preview-area {
    order: 0;
    flex: 0 1 auto;
    align-self: center;
}
.logo-creator .artboard .preview-layer.preview-layer-1 img {
    width:95px;
    height:auto;
}
/*Bubble lable badge styles*/
.logo-creator .badge-lable .gfield_label {
    background: #1D1D1F;
    border-radius: 14px;
    font-family: system-ui,-apple-system,Segoe UI,Helvetica,Arial, sans-serif;
    font-size: 9px;
    color: #FFFFFF;
    text-align: center;
    line-height: 28px;
    text-transform: uppercase;
    padding: 0 15px;
}
/*Symbol picker field lable*/
.logo-creator .config-layer.badge-lable .gfield_label {   
    float: left;
    position:absolute;
    top:60px;
    left:40px;
}
/*Color picker style*/
.logo-creator .color-picker-style-pantone .color-picker-swatch {
    overflow: hidden;
    background: #FFFFFF;
    border: 2px solid #1D1D1F;
    box-shadow: 2px 3px 0 1px #000000;
    border-radius: 5px;
    width: 100%;
}
/*Hide color picker icon*/
.logo-creator  .color-picker-style-pantone .ginput_container_text .color-picker-swatch-color i {
    display: none;
}
/*Image chocies for logos*/
.image-choices-field .image-choices-choice-image-wrap {
    background-size: contain;
    width: 50px;
    height: 50px;
}
.gform_wrapper .logo-creator .config-layer {
    min-height:150px;
    border-bottom:2px solid black;
    position: relative;
    top: -16px;
}
.gform_wrapper .logo-creator .image-choices-field div.gfield_radio {
    display:
    inline-block;
    float: right;
    margin: 37px 40px;
}
/*Margins for logo selections*/
.gform_wrapper .logo-creator .image-choices-field .image-choices-choice {
    margin: 0 0 10px 20px !important;
    border: none!important;
}
/*Selected logo styles*/
.gform_wrapper .logo-creator .image-choices-field .image-choices-choice-selected,
.gform_wrapper .logo-creator .image-choices-field .image-choices-choice-focus,
.gform_wrapper .logo-creator .image-choices-field .image-choices-choice-selected .image-choices-choice-hover{
    border: none;
    transform: scale(1.4);
}
/*Hover styles*/
.gform_wrapper .logo-creator .image-choices-field .image-choices-choice-hover {
 border: none;
}
/*submit button*/
.gform_wrapper .logo-creator .gform_button.button {
    outline: none;
    border: none;
    border-radius: 5px;
    width: 100%;
    margin: 0 40px 60px;
    font-size: 16px;
    color: white;
    font-family: system-ui,-apple-system,Segoe UI,Helvetica,Arial, sans-serif;
    font-weight: bold;
    padding: 20px;
    background:url('https://gf.republiqstaging.com/wp-content/uploads/2022/08/texture-1.jpg');
}
/*gform footer*/
.gform_wrapper.gravity-theme .gform_footer {
    margin: unset!important;
    padding: unset!important;
}
.gform_wrapper.gravity-theme .gfield.gfield--width-quarter {
    padding: 40px 0;
}
.gform_wrapper.gravity-theme .gfield.gfield--width-quarter:nth-of-type(2) {
    padding: 40px 20px 40px 40px;
    width:330px;
}
.gform_wrapper.gravity-theme .gfield.gfield--width-quarter:nth-of-type(4)
.gform_wrapper.gravity-theme .gfield.gfield--width-quarter:nth-of-type(3){
    padding: 40px 10px 40px 0;
}
.gform_wrapper.gravity-theme .gfield.gfield--width-quarter:nth-of-type(5){
    padding: 40px 40px 40px 0;
}

/*Mobile Styles*/
@media screen and (max-width: 769px){
    .gform_wrapper .logo-creator .preview-area.gfield_html {
        min-height:350px;
    }
    .gform_wrapper.gravity-theme .gfield.gfield--width-quarter,
    .gform_wrapper.gravity-theme .gfield.gfield--width-quarter:nth-of-type(2),
    .gform_wrapper.gravity-theme .gfield.gfield--width-quarter:nth-of-type(4),
    .gform_wrapper.gravity-theme .gfield.gfield--width-quarter:nth-of-type(3),
    .gform_wrapper.gravity-theme .gfield.gfield--width-quarter:nth-of-type(5) {
        padding: 0 20px;
    }
    .gform_wrapper .logo-creator .artboard {
        flex-direction: column-reverse;
    }
    .gform_wrapper .logo-creator .text {
        padding: 20px 30px;
    }
    .gform_wrapper .logo-creator .gform_button.button {
        margin: 0 30px 30px;
    }
    .gform_wrapper .logo-creator .config-layer {
        position: relative;
        top:unset;
    }
    .logo-creator .config-layer.badge-lable .gfield_label {
        float: unset;
        display: block;
        top: unset;
        position:relative;
        left: unset;
        margin: 0;
    }
    .gform_wrapper .logo-creator .image-choices-field div.gfield_radio {
        display: block;
        float: unset;
        margin: 20px;
        text-align: center;
    }
    .gform_wrapper .logo-creator .image-choices-field .image-choices-choice {
        margin: 0!important;
        width: calc(50% - 30px);
    }
    .gform_wrapper .logo-creator .result canvas {
        margin: 0;
        display: block;
        width: 100%!important;
        height: auto!important;
    }
}

Add your images

The first thing you’ll need to do once you’ve imported the above form is update the images. The images in the form export will point to our development server, and most likely daily, just remove them and upload your own PNG images.

Create an online logo designer using Gravity Forms and JetSloth Add-ons
Update the image choices

Update the HTML with your form ID

To get the color changing working, ensure you have our Color Picker add-on for Gravity Forms installed. That add-on can update colors using class names, so we’ll just need to add these classes to the correct HTML, as seen in the below screenshot.

You just need to update the FORM ID. So in this example replace gfcp_bg_31_10 with gfcp_bg_YOUR-FORM-ID_10So if your form ID is 36 you’d replace it with gfcp_bg_36_10.The first number after gfcp_bg_ represents the form ID, and the second number represents the field ID.

More info on how this works with color picker and class names.

Create an online logo designer using Gravity Forms and JetSloth Add-ons
Update the preview HTML field with your form ID

Changing default colors

By default, we’ve added a couple of default colors. There’s 2 steps to update this to the colors you want.

  • Edit your form and edit any one of the 3 color picker text fields. Open the advanced tab and edit the Default Value to the HEX color you would like.
  • Within the CSS, if you want to change the default background color to match your color picker field, just edit the below CSS line to match the HEX code of your color picker default value.

 

Pretty neat hey? But what doesn’t it do?

How cool is that, right? If everything’s gone smoothly, you should have a working demo, with your images and colors in your builder. One thing the demo tutorial won’t do however, is save the generated images your users create, and submit that to the form entry. So just keep that in mind. The users will have to save those created logos instead.

However if the form is submitted, the text, colors and symbol selected will be saved to the Gravity Form entry. Also be mindful that if you move a bunch of fields around or add any, you’ll likely need to revisit or tweak the provided CSS.