Review: KLWP and KWGT
12 min read

Review: KLWP and KWGT

Developer: Kustom Industries
Platform: Android
Price: Free, each with $3.50 charges for pro version
Available: On the Google Play Store (KWGT,KLWP)
EE Critic Score: KWGT — 8/10, KLWP — 8/10

So, Android ran a thing a little while ago showing off how customizable the homescreen UI of phones running their OS is, especially compared to main competitor Apple iOS. And this got me thinking: I’ve actually put a good bit of work into my own homescreen, and a lot of what I’ve been able to do has been thanks to two apps from Kustom Industries, which I should recognize by giving them a review.

Now, before going forward, I feel that I should establish something for readers who either don’t have an Android Phone, or who have one and haven’t done much to try to customize it: Android homescreens can be modified in several ways

  • Launchers — These provide the main architecture of the homescreen. All Android phones will come with some launcher pre-installed, probably not a good one. The one I use is Lightning Launcher, but there are a lot of choices out there.
15 best Android launcher apps of 2017
Android launcher apps have long been an integral part of the Android experience. If you don't like the way your home…
  • Wallpapers — Of course, wallpapers are almost as old as GUI-based computing itself, and they’re certainly not exclusive to Android. What is a special feature of Android is Live Wallpapers. These, rather that static images, are animated, change with time, and/or feature interactivity. KLWP uses the Live Wallpaper functionality to great effect as a sub-launcher of sorts.
25 Awesome Android Live Wallpapers by Category
Look at that phone or tablet in your hand. I bet its screen is gorgeous. Chances are that’s why you’re here, looking…
  • Icon Packs — These are apps made to work as launcher extensions to replace the icons used to launch installed apps with different icons with a unified design theme. My setup uses Flat White, by A. Schwartz. It has icons for a lot of apps, and a understated, versatile design. There are hundreds of options though, if it isn’t to your liking.
Best icon packs for Android
Icon packs are awesome. There are a lot of awesome icon packs out there. These are the best.
  • Widgets — These are items that can be added to the homescreens of most launchers, which show bits of contents from apps or performs some functionality (e.g. A news app might have a widget showing headlines, a calendar app a widget showing upcoming events, or a weather app a widget showing the forecast. Other widgets might toggle wi-fi, or trigger the microphone to listen to and identify a song.) KWGT allows the creation of widgets beyond those designed by app developers.
12 Essential Android Widgets for a More Functional Home Screen
One of the most obvious ways in which Android differs from iOS is the way you can customize your home screens with…

KLWP (Kustom Live Wall-Paper) was Kustom Industries’ first app. It is extremely popular in the Android theming community, and for good reason: by integrating features of launchers and widgets into a live wallpaper, Kustom produced the most highly customizable homescreen builder on any platform.

KWGT followed within a year, bringing much of the functionality of KLWP to a competitor against MYCOLORSCREEN’s Zooper. Zooper has mostly remained the dominant widget builder, but it is no longer actively being developed, and hasn’t been updated nearly two years at this point, so KWGT is in a good position to inherit Zooper’s market.

Features and User Experience

The main interface for both apps is split between an upper portion showing either the wallpaper or the widget and a lower portion containing the settings for the items in the wallpaper or widget. It’s a brutally utilitarian design, but it is not very difficult to navigate and use, once one gets the hang of it.

Building from Scratch

Widgets and wallpapers are built from items, which can be positioned in relation to center or edges of the item container. Items can also be given touch actions, allowing for the launch of apps or shortcuts, control of music playback, or switching of global variables. This sounds more complicated than it is, really.

There are several types of items that can be added to a wallpaper or widget:

  • Text — This can be either a simple, unchanging message or a changing one established by the basic coding built into these apps. Weather conditions, date and time, the title of the playing song, the hours until the next sunrise: these are just a small sampling of the things that can be displayed as text. Text can be resized, recolored, and written in different fonts.
  • Morphing Text — This is like text, but limited to a single line, and capable of skewing, spacing, curving, and the like.
  • Shape — One of several basic shapes (square, circle, rectangle, triangle, arc, etc.) which can be given color or texture, including bitmap texture. This last is especially useful for featuring images cropped to different sizes and shapes.
  • Image — This is an image (bitmap or vector), at original shape and aspect ratio. Images can be blurred, tinted, darkened, or de-saturated using various settings (as can the bitmap-textured shapes mentioned above). The image can also be pulled from an internet source, including feeds of multiple images.
  • Font Icon — These are icons, similar to those found in an icon pack, but more often for things like common symbols than for specific apps. Each are assigned a letter code, useful defining what symbol is displayed based on certain conditions (such as displaying a play button when music is paused but a pause button when music is playing.)
  • Progress — These are either linear or circular progress bars, showing things like remaining battery, music duration, or time of day.
  • Series — This creates a series of text (months of the year, days of the week, battery percentages, or a custom series).
  • Overlap Group — A container for other elements, allowing them to overlap each other.
  • Stack Group — A container for other elements, which stacks them in series next to each other, either horizontally or vertically.
  • Komponent — A container for other elements, with its own set of global variables, and with the ability to be exported for use in other projects and/or by other people.

The interactions between various components is where KLWP and KWGT show their differences. KWGT does not have animation functionality; widget components cannot scroll, scale, or turn in relation to each other, as wallpaper components can. I’m not really sure why, since other Android widgets do support motion. But it really is the main weakness of KWGT when compared to KLWP.

Importing Setups

Once a user has created a widget, wallpaper, or komponent, they can export them to be used by others. A limited selection of presets are featured by Kustom to be used in the free versions of KLWP and KWGT. In order to import any other presets, however, the user must upgrade to the Pro versions.

Kustom Industries does make another app which allows the user to package presets as an .apk file, but I haven’t used it, so I’m not reviewing it here.

Reviewer Analysis

What I Like

KLWP is far and away the most powerful homescreen customization tool out there. The things I’m able to do with it continue to amaze me.

KWGT is nearly as powerful, but it makes up for its shortcomings in its broader appeal. Launchers that don’t support live wallpapers will likely still support widgets. And if a user has some other live wallpaper that they prefer to use, KWGT will also be useful to them.

What I Dislike

In my experience, both of these have been a bit buggy. Nothing ruinous, but they are persistently annoying. For instance, KWGT widgets have re-scaled themselves, showing up either very small or zoomed in so only the center of the widget is visible. KLWP animations can be very choppy and touch capability can be laggy, compared to scrolling and tapping through the launcher. If I’m using an app in landscape, with my phone turned sideways, sometimes items in the wallpaper move to the wrong position, and I have to open the editor to refresh it to get them back in their proper place.

As I mentioned before, the editor interface is functional, but kind of ugly.

And again, I don’t know why KWGT doesn’t support animations. It might be that widget animations and live wallpaper animations operate on entirely different code. But I don’t understand the weakness as it stands now.

How I Use Them

I found KWGT first, while I was looking for a single music widget that could control playback from multiple apps. Since discovering KLWP, I haven’t used KWGT as much. KLWP is the backbone of my homescreen setup. KWGT I use wherever KLWP can’t be used, chiefly within folders and on the floating desktop (Lightning Launcher features. I don’t think all other launchers have a floating desktop, or the ability to add widgets to folders.)

I’ve included a little bonus after the review, detailing how I used both to make my current setup, if you’re really interested in what I’ve done.


KLWP is more feature-rich, which makes me like it more, but KWGT has broader application. After using both for several months now, I give each the rating

8/10 — Without negative worth. Able to be recommended, at full price, without reservation.

The Edwards Edition was not contacted by, nor did the Edwards Edition contact, Kustom Industries. The Edwards Edition was not provided a discount on this product, nor did Kustom Industries give any reimbursement to the reviewer. All opinions are given of the pure volition of the reviewer and of the Edwards Edition, without persuasion or compensation by either Kustom Industries or some other entity.

My Setup

If you’re reading this, I’m assuming that you have KLWP and KWGT installed on your device, and are at least somewhat familiar with using them. If not, then I hope you enjoy seeing what I’ve done regardless.

As you may have noticed reading my review, my current setup follows the same aesthetic as this site’s branding. That’s partly because I polished it up for this feature, and partly because this is just my style when designing a UI.

Use of KLWP

The main colors are white (#FFFFFF), black (#FF0000), and orange (#FF6600). These are all set as globals.

My setup is built for a two-page launcher configuration, with the main screen being the left screen. The main screen features the Edwards Edition emblem, with the orange portion having a loop-with-return fade out animation that causes it to pulse between 100% and 50% opacity.

Behind this is a rectangle pulling a bitmap image from Bing’s Photo of the Day service. The link to the photo is set as a text global [1], and called as a bitmap texture by various elements of the theme.

To the right is the edge of the sidebar, showing essential data and triggers for the four side panels.

To the left are several orange dots, which touch trigger Lightning Launcher shortcuts controlling folders containing my favorite apps, sorted by category:

  • Settings
  • News
  • Social & Communications
  • Reference
  • Productivity
  • Games
  • Photography
  • Media
  • Tools
  • Google
  • Travel
  • Education
  • File Management
  • Personalization (shown)

Swiping left from the main screen brings out the full sidebar. The background of the sidebar is the same Bing photo from before, filtered black-and-white and dimmed by 75%. The trapezoids at the top and bottom are constructed by combining triangles and rectangles.

At the top is a search bar, which opens the Google app. Below this are a battery status display, an analogue clock display (made with several co-centric progress circles) and a digital clock display, which is visible from the main page. Below these is a display of weather conditions.

The center is left empty for apps in the launcher to occupy the space. Right now, I have just a single row. It is possible to embed icons directly into the wallpaper, and include touch actions to launch apps that way, but it’s much easier to just use the launcher as normal.

The bottom half of the sidebar contains text readouts concerning the contents of the side panels mentioned earlier: The time and name of the next event, the latitude, longitude, and name of the current location, the top AP headline, and the first notification, if any.

The bottom contains music controls and data. The album art grows larger when the sidebar is opened. If music is paused, the album art loses color saturation. [2]

The rest of the setup exists as four side panels. The first displays the date, the next seven calendar events, sunrise and sunset times, and gives the ability to add a new event. The image behind the date is the Bing photo, tinted orange and blurred by 30%.

The second panel displays a map of the area. [3]

The third panel displays the top news from the Associated Press, though the source can be changed by changing the global variable to a different RSS feed. The times at the left of the headlines are supposed to be the times each story was released, but I’m doing something wrong, and the local time is displaying instead. I have yet to fix this problem.

The fourth panel is also a bit of a work in progress, showing phone status data, such as battery (level, temperature, and voltage), data signals, and the time of the next alarm. At the bottom is a full look at the Bing photo, as well as its title [4].

I was able to give my setup an automatic night mode, by setting the background to change from white to black within a set time to the next sunrise. [5] This is something I just recently came up with, so I hope to further integrate it into the theme, beyond just changing the background.

Use of KWGT

Right now, I’m only really using KWGT on the Floating Desktop. Lightning Launcher’s Floating Desktop works by overlaying a desktop over whatever’s on the screen. Swiping up from the bottom right corner of my screen shows me a KWGT widget showing time, date, battery, weather, and a Google search bar. Swiping this left or right scrolls to a KWGT music widget.


  1.$tc(cut,tc(reg(tc(reg, wg(“", txt),”.*urlbase”,””),”,.*”,””)), 3, tc(len, tc(reg(tc(reg, wg(“", txt),”.*urlbase”,””),”,.*”,””)))-4)$_1920x1080.jpg
  2. Set bitmap filter to “desaturate”. Set the amount to this code:
  3. I followed this tutorial
  4. Set text to:
    $tc(cut, tc(reg, tc(reg, wg(“", txt),”©.*”,””),”.*:”,””),1,tc(len,tc(reg, tc(reg, wg(“", txt),”©.*”,””),”.*:”,””))-3)$
  5. Set color to:
    $if(tf(ai(nsunrise), h)<8,#FF000000,#FFFFFFFF)$

Images and animations in the above were made possible by Screener and AZ Screen Recorder.