Cerulean
A cross-platform UI framework for C#.
Install / Use
/learn @Xapier14/CeruleanREADME
Warning This section is heavily under-construction. Use a release build instead if available.
-
Download a release build here and extract the archive.
-
Add the
crnexecutable to your binaries folder or add the containing folder to the%PATH%environment variable. -
Create your new app via:
crn new <app_name> -
Build the project.
crn buildThis should automatically build the XMLs, the dotnet project, and bundle the needed dependencies.
Currently, the bundler only works on a Windows build target for now. Support for other operating systems will come in a later update.
See "Important Notes" below on how to bundle and install dependencies for other OSs.
-
Run the app via:
crn runIf you run into DllNotFound errors, try running
crn bundle.
- .NET 6 is required for the CLI tool.
- .NET 6 or newer projects are compatible with CeruleanUI.
- By default, the CLI should use the latest .NET SDK and creates a project with the same version.
- Use the appropriate SDL2 binaries for your app/system.
- On Any CPU, use the binaries appropriate for your system's architecture.
- On x86, use x86.
- On x64, use x64.
- On Windows, use the runtime binaries available at <a href="https://libsdl.org/">libsdl.org</a>.
- On Ubuntu, simply do:
sudo apt-get install libsdl2-dev sudo apt-get install libsdl2-ttf-dev sudo apt-get install libsdl2-image-dev- NOTE: the snap version of
dotnetwill NOT find the SDL2 library. Please install dotnet with APT.- See <a href="https://docs.microsoft.com/en-us/dotnet/core/install/linux-ubuntu">installing dotnet</a> on MSDN.
- Relevant issue: <a href="https://github.com/exelix11/SysDVR/issues/118">exelix11/SysDVR (#118)</a>.
- NOTE: the snap version of
- Fonts will be searched first in a folder called
Fontsin the environment's current directory, and then the system's font directory.- The default font for the Label component is
Arial(Subject to change). - The library will find the first font with a filename of
Arial.ttforArial.otf, this is case-insensitive. - If not found, it will simply throw a
GeneralAPIException: "Font not found.".
- The default font for the Label component is
Cerulean API
- [x] Window Events
- [x] Styler Element
Cerulean Components
- [x] Functional Components
- [x] Timer
- [x] Pointer
- [ ] Dialog Components
- [ ] Message Box
- [ ] Open File Dialog
- [ ] Save File Dialog
- [ ] Folder Select Dialog
- [x] Graphical Components
- [x] Rectangle
- [x] Image
- [x] Progress Bar
- [x] Label
- [ ] Input Components
- [x] TextBox
- [ ] MultiTextBox
- [x] Button
- [x] Check Box
- [x] Radio Button
- [ ] Drop Down List
- [ ] Container Components
- [x] Grid
- [x] Panel
- [ ] Stack Panel
- [ ] Group Tab
Cerulean CLI
- [x] Style Builder
- [ ] C# Snippet Element
- [x] Project Builder/Scaffolder
Warning
This is a WIP project, please do not use in commercial projects.
License
This project uses the MIT License. SDL2 and SDL2-CS, dependencies of this project, are released under the zlib license.
