Skip to content

A framework for building GUI applications within any command line that runs .NET.

License

Notifications You must be signed in to change notification settings

adamabdelhamed/klooie

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

klooie

A framework for building GUI applications within any command line that runs .NET. Klooie provides all the things you would expect from a UX Framework.

I'm working on a free video game called cliborg that runs on the command line and highlights many features of this framework.

Binary

klooie is available at the Official NuGet Gallery.

Key Features

Category Description
Containers and Layout Easily organize controls into a usable view Easily organize controls into a usable view
Built-in and Custom Controls Use controls from the library or create your own
Dialogs Panels that appear over a view and temporarity restrict focus to the controls within the dialog
Theming A model for defining one or more themes for your application.
Focus & Keyboard Input Lets the user interact with one primary control at a time
Forms A structured way to accept multiple inputs from the user
Animations You can animate controls sizes, positions, colors, and more. Built-in easing and custom easing supported.
Observability Constructs that make your application responsive and dynamic.

Getting Started

Here's a hello world console app that just shows a message on the middle of the screen and waits for the user to press escape before exiting.

The code for this sample is shown below.

sample image

using PowerArgs;
using klooie;
namespace klooie.Samples;

// Define your application
public class HelloWorld : ConsoleApp
{
    protected override Task Startup() => LayoutRoot
        .Add(new Label("Hello World! Press escape to exit.".ToOrange()))
        .CenterBoth()
        .FadeIn(2000);
}

// Entry point for your application
public static class HelloWorldProgram
{
    public static void Main() => new HelloWorld().Run();
}

Advanced Features

You can have fun with klooie and build games that are fun to play within the command line.

Category Description
Physics Enables controls to move with velocity semantics and collision detection
Sound effects (Windows only) Play sound effects and background music

About

A framework for building GUI applications within any command line that runs .NET.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages