Build simple desktop apps with C, XML and CSS

Get Started Download

Version:2.2.0   ·   Date:2021-06-01   ·   GitHub   ·   Creator:lc-soft
Hello, World!
<?xml version="1.0" encoding="UTF-8" ?>
  <resource type="text/css">
    #text-hello {
      color: #8cc63f;
      padding: 25px;
      margin: 25px;
      border: 1px solid #000;
      background-color: #fafafa;
    #btn-hello, #input-hello {
      margin: 0 0 0 25px;
    <widget id="text-hello" type="textview">Hello, World!</widget>
    <widget id="input-hello" type="textedit">Hello, World!</widget>
    <widget id="btn-hello" type="button">Submit</widget>


LCUI is a simple GUI library, it is written in C, support XML and CSS, you can use C, XML and CSS to build simple desktop applications, at present it is mainly supported Windows, subsequent versions will improve support for Linux.

If you have web development experience, then the use of LCUI will be easier to get started, because LCUI's XML, CSS, and element layout processing effect are similar to web browser, you can refer to the sample code on the left to learn about the effect.

written in C

Suitable for applications that are smaller and are primarily written in C.


Support the use of XML and CSS to describe the GUI layout and style, saving interface development time and maintenance costs.

Cross platform

Support for Windows and Linux, you can write Windows Desktop apps and Universal Windows Platform apps, as well as Linux Desktop apps.

Get Started

To get started with LCUI, you can using lcui-cli to create an LCUI project, then compile and run it. But before using lcui-cli you need to install the following tools on your computer:

Just one sample application is not enough? You can try LC Design, a component library designed and developed specifically for LCUI.
# Install lcui-cli
npm install -g @lcui/cli

# Create an LCUI project named myapp
lcui create myapp

# Go into project directory
cd myapp

# Run it
npm run start


Some screenshots of LCUI applications

Loved by some of the people and companies on earth

LCUI solves many complex issues, it reduces the application UI development and maintenance costs, I only need to write a code for the UI will be able to make my application in a number of platforms to show a consistent UI effect.