/Meta

The backend for declarative UI frameworks enabling the definition of UIs for multiple platforms in one executable target

Primary LanguageSwiftMIT LicenseMIT

Meta

Documentation · GitHub

Meta is a framework allowing the creation of user interface (UI) frameworks in Swift.

Table of Contents

Overview

Meta follows the following principles:

  • It is a declarative framework, meaning that instead of writing how to construct a user interface, you write what it looks like.
  • The user interface is treated as a function of its state. Instead of directly modifying the UI, modify its state to update views.
  • Multiple UI frameworks can be used in the same code, but the selection of the framework happens when executing the app. This enables the creation of cross-platform UI frameworks combining several UI frameworks which render always with the same backend.

It knows the following layers of UI:

  • An app is the entry point of the executable, containing the windows.
  • A scene element is a template for a container holding one or multiple views (e.g., a window).
  • A view is a part of the actual UI inside a window, or another view.

Detailed information can be found in the docs.

Usage

Meta can be used for creating UI frameworks in Swift which can then be used to create apps.

Follow those steps if you want to create a UI framework.

  1. Open your Swift package in GNOME Builder, Xcode, or any other IDE.
  2. Open the Package.swift file.
  3. Into the Package initializer, under dependencies, paste:
.package(url: "https://github.com/AparokshaUI/Meta", from: "0.1.0")   

Thanks

  • DocC used for the documentation
  • SwiftLint for checking whether code style conventions are violated
  • The programming language Swift