diff --git a/README.md b/README.md index 5565ba9..36cc41e 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,10 @@ **A comprehensive UI library providing flexbox/grid layouts, theming, animations, and event handling for LÖVE2D games.** -FlexLöve is a lightweight, flexible GUI library for Löve2D that implements a flexbox-based layout system. It provides a simple way to create and manage UI elements with automatic layout calculations, animations, theming, and responsive design. Immediate mode support is now included (retained is default). +FlexLöve is a lightweight, flexible GUI library for Löve2D that implements a flexbox-based layout system. +The goals of this project are two-fold, first, anyone with basic CSS knowledge should be able to +use this library with minimal learning curve. Second, this library should take you from early prototyping to production. + ## ⚠️ Development Status @@ -24,7 +27,7 @@ This library is under rapid, active development. While many features are functio - **Text Rendering**: Flexible text display with alignment and auto-scaling - **Corner Radius**: Rounded corners with individual corner control - **Advanced Positioning**: Absolute, relative, flex, and grid positioning modes -- **Multi-Touch & Gestures**: Touch event tracking, gesture recognition (tap, double-tap, long-press, swipe, pan, pinch, rotate), and touch scrolling with momentum/bounce +- **Multi-Touch & Gestures(Not yet tested)**: Touch event tracking, gesture recognition (tap, double-tap, long-press, swipe, pan, pinch, rotate), and touch scrolling with momentum/bounce ## Quick Start @@ -65,6 +68,16 @@ function love.draw() end ``` +## Quick Demos +All of the following use the [metal theme](./themes/metal.lua) +![Basic Layout](./resources/basic.png) +![Backdrop Blur](./resources/backdropblur.png) +![Responsive Design](./resources/resizing.mp4) +![Responsive Elements](./resources/responsive-elements.mp4) +![Scrollables](./resources/scrollable.mp4) +![Sliders](./resources/slider.mp4) +![Text Input](./resources/textInput.mp4) + ## Build Profiles FlexLöve supports optional modules to reduce bundle size for different use cases. Simply exclude module files you don't need - the library handles missing modules gracefully with null-object stubs. diff --git a/resources/backdropblur.png b/resources/backdropblur.png new file mode 100644 index 0000000..8d5afd9 Binary files /dev/null and b/resources/backdropblur.png differ diff --git a/resources/basic.png b/resources/basic.png new file mode 100644 index 0000000..8a8d1d8 Binary files /dev/null and b/resources/basic.png differ diff --git a/resources/resizing.mp4 b/resources/resizing.mp4 new file mode 100644 index 0000000..ca26fa5 Binary files /dev/null and b/resources/resizing.mp4 differ diff --git a/resources/responsive-elements.mp4 b/resources/responsive-elements.mp4 new file mode 100644 index 0000000..c6ba4b3 Binary files /dev/null and b/resources/responsive-elements.mp4 differ diff --git a/resources/scrollable.mp4 b/resources/scrollable.mp4 new file mode 100644 index 0000000..dbd3dcb Binary files /dev/null and b/resources/scrollable.mp4 differ diff --git a/resources/slider.mp4 b/resources/slider.mp4 new file mode 100644 index 0000000..652808d Binary files /dev/null and b/resources/slider.mp4 differ diff --git a/resources/textInput.mp4 b/resources/textInput.mp4 new file mode 100644 index 0000000..b5f0917 Binary files /dev/null and b/resources/textInput.mp4 differ