LitePaws is a high-performance, low-resource desktop pet application designed for modern Linux environments. Written in C++17 and utilizing SDL2, it aims for a memory footprint under 10MB while providing smooth animations and multi-monitor support.
- X11 & Wayland Support: Native compatibility via SDL2 (XWayland recommended).
- Ultra Low RAM: Optimized for minimal memory usage.
- Multi-Monitor Aware: Detects screen boundaries and moves seamlessly across displays.
- Customizable: Easy PNG-based animation sequences (idle, walk, sleep, drag).
- GUI Config Editor: Simple Python-based tool to adjust settings.
LitePaws is a work-in-progress personal project. I am continuously learning and improving the codebase. Currently, there are some known limitations:
- Transparency on X11/i3wm: Achieving perfect transparency with some window managers can be tricky. If you experience a black background instead of transparency, it is likely due to compositor settings or X11 visual configuration. Please ensure you have a compositor like
picomrunning. I am actively looking for ways to improve this. - Wayland Support: Currently, the application relies on XWayland for global window positioning. Native Wayland support is a goal for the future.
If you are an experienced Linux user and know how to improve these aspects, contributions are more than welcome!
src/: C++ source files.include/: Header files.assets/: PNG assets and sprites (place your frames here!).config/: Configuration files (settings.ini).tools/: Utility scripts (Config Editor, Test Asset Generator).bin/: Compiled executables.
You will need the following packages (Ubuntu/Debian example):
sudo apt-get update
sudo apt-get install g++ make libsdl2-dev libsdl2-image-dev python3-tk python3-pillowTo compile the project, run:
makeLaunch the pet:
./bin/litepawsTo edit settings:
python3 tools/config_editor.pyThis project is licensed under the MIT License - see the LICENSE file for details.