{"id":13441752,"url":"https://github.com/ultralight-ux/Ultralight","last_synced_at":"2025-03-20T12:32:40.098Z","repository":{"id":37396648,"uuid":"143963119","full_name":"ultralight-ux/Ultralight","owner":"ultralight-ux","description":"Lightweight, high-performance HTML renderer for game and app developers.","archived":false,"fork":false,"pushed_at":"2024-04-22T20:46:31.000Z","size":4354,"stargazers_count":4753,"open_issues_count":266,"forks_count":199,"subscribers_count":81,"default_branch":"master","last_synced_at":"2025-03-13T19:06:49.617Z","etag":null,"topics":["cross-platform","desktop-apps","directx-11","game-development","gamedev","games","gpu","html-renderer","linux","macos","metal","opengl","ultralight","webkit","windows"],"latest_commit_sha":null,"homepage":"https://ultralig.ht","language":"CMake","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ultralight-ux.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"license/EULA.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-08-08T05:00:13.000Z","updated_at":"2025-03-10T11:25:40.000Z","dependencies_parsed_at":"2023-01-26T01:32:50.673Z","dependency_job_id":"293a201a-097b-4073-9fc7-5edf709eff41","html_url":"https://github.com/ultralight-ux/Ultralight","commit_stats":{"total_commits":129,"total_committers":3,"mean_commits":43.0,"dds":0.1705426356589147,"last_synced_commit":"208d653e872b29234bbd4a5fef6dec403f3dfdbd"},"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ultralight-ux%2FUltralight","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ultralight-ux%2FUltralight/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ultralight-ux%2FUltralight/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ultralight-ux%2FUltralight/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ultralight-ux","download_url":"https://codeload.github.com/ultralight-ux/Ultralight/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244611417,"owners_count":20481186,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cross-platform","desktop-apps","directx-11","game-development","gamedev","games","gpu","html-renderer","linux","macos","metal","opengl","ultralight","webkit","windows"],"created_at":"2024-07-31T03:01:37.662Z","updated_at":"2025-03-20T12:32:40.086Z","avatar_url":"https://github.com/ultralight-ux.png","language":"CMake","funding_links":[],"categories":["HarmonyOS","CMake","Cmake","Graphics","GUI Frameworks"],"sub_categories":["Windows Manager","Web"],"readme":"\u003cimg src=\"media/logo.png\" width=\"200\"\u003e\n\u003ca href='https://ci.ultralig.ht/job/Ultralight/job/master/'\u003e\u003cimg src='https://ci.ultralig.ht/buildStatus/icon?job=Ultralight%2Fmaster'\u003e\u003c/a\u003e\n\n[Website](https://ultralig.ht) | [Chat on Discord!](https://chat.ultralig.ht) | [Browse C++ API](https://ultralig.ht/api/cpp/1_3_0/) | [Browse C API](https://ultralig.ht/api/c/1_3_0/) | [Support Docs](https://docs.ultralig.ht) | [Twitter](https://twitter.com/ultralight_ux)\n\n## :video_game: Discord Chat\n\nGot a question about Ultralight? [\u003cstrong\u003eChat with us on Discord!\u003c/strong\u003e \u003cimg src=\"media/discord-logo.svg\"\u003e](https://chat.ultralig.ht)\n\n# :star: About\n\nUltralight makes it easy for C/C++ developers to seamlessly integrate web-content into games and desktop apps.\n\nUse our lightweight, high-performance renderer to display HTML/JS/CSS on a variety of platforms and hardware targets.\n\n## Key Features\n\n\u003cdl\u003e\n\u003cdt\u003e1. :zap: Modern HTML/JS/CSS Support:\u003c/dt\u003e\n\u003cdd\u003e\n    Based on WebKit, Ultralight enjoys many of the same cutting-edge web features as Apple's Safari browser, simplifying development and reducing production costs.\n\u003c/dd\u003e\n\n\u003cdt\u003e2. :sparkles: Powerful and Lightweight:\u003c/dt\u003e\n\u003cdd\u003e\n    Thanks to its highly-customizable CPU and GPU renderers, Ultralight offers developers unprecedented control over performance and memory usage-- making it the go-to choice for users who demand speed in constrained environments.\n\u003c/dd\u003e\n\n\u003cdt\u003e3. :jigsaw: Cross-Platform Compatibility:\u003c/dt\u003e\n\u003cdd\u003e\n    With support for Windows, macOS, Linux, Xbox, PS4, and PS5 (and ARM64 coming in 1.4), Ultralight ensures your content displays smoothly and consistently on a wide range of platforms and hardware targets.\n\u003c/dd\u003e\n\n\u003cdt\u003e4. :repeat: Deep C/C++ and JavaScript Integration:\u003c/dt\u003e\n\u003cdd\u003e\n    Ultralight facilitates seamless C/C++ and JavaScript integration through direct access to the JavaScriptCore API. Expose native state to web pages, extend JavaScript classes, define C/C++ callbacks, and more.\n\u003c/dd\u003e\n\n\u003cdt\u003e5. :wrench: Low-Level Customization:\u003c/dt\u003e\n\u003cdd\u003e\n    Ultralight allows developers the ability to override platform-specific functionality-- granting control over such things as file-system access, clipboard management, font loading, and more to suit the unique needs of each target environment.\n\u003c/dd\u003e\n\u003c/dl\u003e\n\n## :space_invader: For Game Developers\n\nDeveloped in collaboration with top AAA game studios, Ultralight is engineered to display high-performance web-content across a diverse set of hardware targets and game engine environments.\n\nChoose between our CPU renderer for fast, reliable rendering or our customizable GPU renderer for unparalleled animation performance.\n\n__→ Learn more by visiting our [Game Integration Guide](https://docs.ultralig.ht/docs/integrating-with-games).__\n\n## :desktop_computer: For Desktop-App Developers\n\nGet the best of both worlds-- save time by building your front-end with HTML/CSS/JS while retaining the power and performance of C/C++.\n\nEmbed the renderer directly within your existing run loop or leverage our AppCore framework to do all the heavy lifting for you, offering convenient native window management and accelerated rendering.\n\n__→ Learn more by visiting our [Desktop App Guide](https://docs.ultralig.ht/docs/writing-your-first-app).__\n\n## :classical_building: Architecture\n\nUltralight is a platform-agnostic port of WebKit for games and desktop apps.\n\nPortions of the library are open-source, here's how the library is laid out:\n\n|                    | Description                              | License     | Source Code              |\n|--------------------|------------------------------------------|-------------|--------------------------|\n| __UltralightCore__ | Low-level graphics renderer              | Proprietary | (Available with license) |\n| __WebCore__        | HTML layout engine (WebKit fork)         | LGPL/BSD    | [ultralight-ux/WebCore](https://github.com/ultralight-ux/WebCore) |\n| __Ultralight__     | View, compositor, and event logic        | Proprietary | (Avaiable with license)  |\n| __AppCore__        | :sparkles: Optional, desktop app runtime | LGPL        | [ultralight-ux/AppCore](https://github.com/ultralight-ux/AppCore) |\n\n### :rocket: Dual High-Performance Renderers\n\nWe offer two different renderers for integration into a variety of target environments.\n\n\u003ctable style=\"width: 100%;\"\u003e\n\u003ctr\u003e\u003cth\u003e :sparkle: CPU Renderer\u003c/th\u003e\u003cth\u003e :eight_spoked_asterisk: GPU Renderer\u003c/th\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"width: 50%;\"\u003e\n\n* Fast, lightweight, and easy to integrate.\n* Renders to a 32-bit BGRA pixel buffer.\n* Based on Skia, accelerated via multi-threaded SIMD.\n* See the [Game Integration Guide](https://docs.ultralig.ht/docs/integrating-with-games) for more info.\n\n\u003c/td\u003e\n\u003ctd style=\"width: 50%;\"\u003e\n\n* High-performance, customizable, and portable.\n* Renders on the GPU to a texture.\n* Accelerated via tesselated geometry and pixel shaders.\n* See [Using a Custom GPUDriver](https://docs.ultralig.ht/docs/using-a-custom-gpudriver) for more info.\n\n\u003c/td\u003e\u003c/tr\u003e\n\u003c/table\u003e\n\n## :lock: Licensing\n\nIt's easy to license Ultralight in projects big and small.\n\n\u003ctable style=\"width: 100%;\"\u003e\n\u003ctr\u003e\u003cth\u003e :heart_eyes: Free License\u003c/th\u003e\u003cth\u003e :crown: Commercial License\u003c/th\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"width: 50%;\"\u003e\n\n * __Free__ for non-commercial use.\n * __Free__ for commercial use by indie companies (\u003c $100K annual revenue).\n * Full SDK available for all users, download and try now.\n * See [LICENSE.txt](license/LICENSE.txt) for more info.\n\n\u003c/td\u003e\n\u003ctd style=\"width: 50%;\"\u003e\n\n* Paid licenses for commercial use.\n* Enterprise licensing, custom contracts, and volume discounts available.\n* Performance tools, extra configurations, and source code.\n* See [our website](https://ultralig.ht) for more info.\n\n\u003c/td\u003e\u003c/tr\u003e\n\u003c/table\u003e\n\n## :eyes: Getting the Latest SDK\n\nYou can get the latest SDK for each platform below (contact us for Xbox, PS4, and PS5):\n\n * [Windows       | x64](https://ultralight-sdk.sfo2.cdn.digitaloceanspaces.com/ultralight-sdk-latest-win-x64.7z)\n * [Linux         | x64](https://ultralight-sdk.sfo2.cdn.digitaloceanspaces.com/ultralight-sdk-latest-linux-x64.7z)\n * [macOS         | x64](https://ultralight-sdk.sfo2.cdn.digitaloceanspaces.com/ultralight-sdk-latest-mac-x64.7z)\n\n### Getting Archived Binaries for a Specific Commit\n\nPre-built binares are uploaded to the following S3 buckets every commit:\n\n * __Archived Binaries__: \u003chttps://ultralight-sdk.sfo2.cdn.digitaloceanspaces.com/\u003e\n\n## :hammer_and_wrench: Building the Samples\n\nTo build the samples in this repo, please [follow the instructions here](https://docs.ultralig.ht/docs/trying-the-samples).\n\n\n## :information_source: Useful Links\n\n| Link                       | URL                                                 |\n| -------------------------- | --------------------------------------------------- |\n| __Join our Discord!__      | \u003chttps://chat.ultralig.ht\u003e                          |\n| __Docs / Getting Started__ | \u003chttps://docs.ultralig.ht\u003e                          |\n| __Browse C++ API__         | \u003chttps://ultralig.ht/api/cpp/1_3_0/\u003e                |\n| __Browse C API__           | \u003chttps://ultralig.ht/api/c/1_3_0/\u003e                  |\n| __Follow Us on Twitter__   | \u003chttps://twitter.com/ultralight_ux\u003e                 |\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fultralight-ux%2FUltralight","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fultralight-ux%2FUltralight","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fultralight-ux%2FUltralight/lists"}