Archive of https://github.com/RaringM/borealis — Hardware accelerated, Nintendo Switch inspired UI library for PC, Android, iOS, PSV, PS4 and Nintendo Switch https://github.com/RaringM/borealis
  • C++ 71.8%
  • Java 14.7%
  • CMake 6.5%
  • Python 5.3%
  • Lua 0.5%
  • Other 1.2%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-09-19 17:10:50 -05:00
.github/workflows git submodule replaced by FetchContent 2026-05-25 13:33:19 +08:00
android-project git submodule replaced by FetchContent 2026-05-25 13:33:19 +08:00
demo git subrepo pull --branch=v4.1.0 --force library/lib/extern/tweeny 2026-08-05 09:42:57 +08:00
library Add PS5 native rendering and HDR presentation 2026-09-19 17:10:50 -05:00
ps4 PS4: Update shader code and dockerfile 2025-02-22 13:37:43 +08:00
psv vita: gxm support (#95) 2025-02-15 12:06:19 +08:00
resources input support password style 2026-05-25 13:33:19 +08:00
tests/ps5 Add PS5 native rendering and HDR presentation 2026-09-19 17:10:50 -05:00
winrt ci: xmake script for uwp 2023-07-06 21:45:48 +08:00
.clang-format Overall style refactor 2019-09-02 10:54:20 +02:00
.gitattributes Initial commit 2019-04-23 14:49:22 +02:00
.gitignore PSV: add demo sce_sys 2024-04-17 09:39:22 +08:00
AUTHORS Change project license from GPLv3 to Apache 2.0 (#83) 2021-02-19 19:11:08 +01:00
build_libromfs_generator.sh Slim android project demo (#102) 2025-04-10 13:52:32 +08:00
CMakeLists.txt Remove unused depend when USE_DEKO3D 2025-11-20 11:04:48 +08:00
LICENSE Change project license from GPLv3 to Apache 2.0 (#83) 2021-02-19 19:11:08 +01:00
NOTICE Change project license from GPLv3 to Apache 2.0 (#83) 2021-02-19 19:11:08 +01:00
README.md Allow custom swap interval (#96) 2025-02-19 16:40:03 +08:00
uwp.lua ci: xmake script for uwp 2023-07-06 21:45:48 +08:00
xmake.lua Change demo code 2024-04-04 19:29:11 +08:00

borealis logo

borealis

Controller and TV oriented UI library for Android, iOS, PC, PS4, PSV and Nintendo Switch.

  • Mimicks the Nintendo Switch system UI, but can also be used to make anything else painlessly
  • Hardware acceleration and vector graphics with automatic scaling for TV usage (powered by nanovg)
  • Can be ported to new platforms and graphics APIs by providing a nanovg implementation
  • Powerful layout engine using flex box as a base for everything (powered by Yoga Layout)
  • Automated navigation paths for out-of-the-box controller navigation
  • Out of the box touch support
  • Define user interfaces using XML and only write code when it matters
  • Use and restyle built-in components or make your own from scratch
  • Display large amount of data efficiently using recycling lists
  • Integrated internationalization and storage systems
  • Integrated toolbox (logger, animations, timers, background tasks...)

Check the daily builds for what borealis looks like.

Build the demo code

Check our wiki for more information:

Including in your project

  1. Your project must be built as C++17 (-std=c++1z). You also need to remove -fno-rtti and -fno-exceptions if you have them
  2. Use a submodule (or even better, a subrepo) to clone this repository in your project
  3. Copy the resources folder to the root of your project

Or you can start a new project from the template

Made with borealis (Alphabetical order)

Project Name Project Description
Moonlight-Switch Moonlight port for Nintendo Switch
SimpleModDownloader A switch homebrew which downloads mods from gamebanana
switchfin Third-party native Jellyfin client for PC/PS4/Nintendo Switch
UpcomingSwitchGames A switch homebrew for viewing upcoming games
wiliwili Third-party bilibili client for PC/PS4/PSV/XBOX/Nintendo Switch