{"id":15787135,"url":"https://github.com/aparokshaui/meta","last_synced_at":"2025-10-21T08:43:08.491Z","repository":{"id":249318712,"uuid":"816351545","full_name":"AparokshaUI/Meta","owner":"AparokshaUI","description":"The backend for declarative UI frameworks enabling the definition of UIs for multiple platforms in one executable target","archived":false,"fork":false,"pushed_at":"2024-10-03T20:55:35.000Z","size":143,"stargazers_count":5,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-10-04T09:41:08.119Z","etag":null,"topics":["declarative","linux","macos","swift","swiftui","ui","windows"],"latest_commit_sha":null,"homepage":"https://aparokshaui.github.io/Meta/","language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AparokshaUI.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","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":"2024-06-17T15:08:43.000Z","updated_at":"2024-10-03T22:53:18.000Z","dependencies_parsed_at":"2024-09-15T10:21:57.556Z","dependency_job_id":null,"html_url":"https://github.com/AparokshaUI/Meta","commit_stats":null,"previous_names":["aparokshaui/meta"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AparokshaUI%2FMeta","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AparokshaUI%2FMeta/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AparokshaUI%2FMeta/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AparokshaUI%2FMeta/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AparokshaUI","download_url":"https://codeload.github.com/AparokshaUI/Meta/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":219869543,"owners_count":16555277,"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":["declarative","linux","macos","swift","swiftui","ui","windows"],"created_at":"2024-10-04T21:05:32.593Z","updated_at":"2025-10-16T01:30:44.323Z","avatar_url":"https://github.com/AparokshaUI.png","language":"Swift","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003e [!IMPORTANT]  \n\u003e\n\u003e **This project has moved. You can find it [here](https://git.aparoksha.dev/aparoksha/meta).**\n\u003e\n\u003e The decision is based on [this article](https://sfconservancy.org/GiveUpGitHub/).\n\u003e\n\u003e Thanks to [No GitHub](https://codeberg.org/NoGitHub) for the badge used below.\n\u003e\n\u003e [![No GitHub](https://nogithub.codeberg.page/badge.svg)](https://sfconservancy.org/GiveUpGitHub/)\n\n\u003cp align=\"center\"\u003e\n  \u003ch1 align=\"center\"\u003eMeta\u003c/h1\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://aparokshaui.github.io/Meta/\"\u003e\n  Documentation\n  \u003c/a\u003e\n  ·\n  \u003ca href=\"https://github.com/AparokshaUI/Meta\"\u003e\n  GitHub\n  \u003c/a\u003e\n\u003c/p\u003e\n\n_Meta_ is a framework allowing the creation of user interface (UI) frameworks in Swift.\n\n## Table of Contents\n\n- [Overview](#overview)\n- [Usage](#usage)\n- [Thanks](#thanks)\n\n## Overview\n\n_Meta_ follows the following principles:\n\n- It is a **declarative** framework, meaning that instead of writing _how_ to construct a user interface, you write _what_ it looks like.\n- The user interface is treated as a function of its **state**. Instead of directly modifying the UI, modify its state to update views.\n- 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.\n\nIt knows the following layers of UI:\n\n- An app is the entry point of the executable, containing the windows.\n- A scene element is a template for a container holding one or multiple views (e.g., a window).\n- A view is a part of the actual UI inside a window, or another view.\n\nDetailed information can be found in the [docs](https://aparokshaui.github.io/Meta/).\n\n## Usage\n\n_Meta_ can be used for creating UI frameworks in Swift which can then be used to create apps.\n\nFollow those steps if you want to create a UI framework.\n\n1. Open your Swift package in GNOME Builder, Xcode, or any other IDE.\n2. Open the `Package.swift` file.\n3. Into the `Package` initializer, under `dependencies`, paste:\n```swift\n.package(url: \"https://github.com/AparokshaUI/Meta\", from: \"0.1.0\")   \n```\n\n## Thanks\n\n- [DocC](https://github.com/apple/swift-docc) used for the documentation\n- [SwiftLint](https://github.com/realm/SwiftLint) for checking whether code style conventions are violated\n- The programming language [Swift](https://github.com/swiftlang/swift)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faparokshaui%2Fmeta","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faparokshaui%2Fmeta","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faparokshaui%2Fmeta/lists"}