diff --git a/config.toml b/config.toml index 30f923b..450d5c7 100644 --- a/config.toml +++ b/config.toml @@ -42,7 +42,6 @@ links = [ { name = "Guides" , menu = [ { url = "@/backends/_index.md", name = "Backends" }, { url = "/tutorials", name = "Tutorials" }, - { url = "/hig", name = "Human Interface Guidelines" }, { url = "/docs", name = "Documentation" }, ]}, { url = "https://forums.aparoksha.dev/", name = "Community" }, diff --git a/content/_index.md b/content/_index.md index c57496e..b9b23bd 100644 --- a/content/_index.md +++ b/content/_index.md @@ -80,11 +80,17 @@ struct SearchView: View { ## Supported Platforms +
Aparoksha's goal is to enable you to bring your app to as many users as possible on completely different platforms. Therefore, it is built in an open and extensible way. Creating a backend for a new platform is almost as simple as creating an app! +
+ +Create a Backend + +
A list of some backends is available [here](@/backends/_index.md). They can be combined with Aparoksha in a simple way. -Aparoksha itself currently supports the three major desktop platforms [GNOME](@/backends/Adwaita/index.md), [Windows](@/backends/WinUI/index.md), and [macOS](@/backends/AppKit/index.md). +Aparoksha itself currently supports [GNOME](@/backends/Adwaita/index.md) and [Windows](@/backends/WinUI/index.md). What makes the Aparoksha project unique is that each backend is a fully independent project, optimized for its platform. In a cross-platform app, you can leverage the full potential of the individual backends by writing platform-specific bits of code. diff --git a/content/backends/Adwaita/index.md b/content/backends/Adwaita/index.md index 9c73b89..d6ea424 100644 --- a/content/backends/Adwaita/index.md +++ b/content/backends/Adwaita/index.md @@ -1,7 +1,7 @@ +++ title = "Adwaita" description = "Develop beautiful apps following the design guidelines of the GNOME desktop." -date = 2023-09-12 +date = 2024-10-07 [taxonomies] tags = ["Linux", "Aparoksha"] [extra] @@ -11,7 +11,7 @@ banner = "Adwaita.png" Develop beautiful apps following the design guidelines of the GNOME desktop. -Read the documentation to get started or browse the code on GitHub. +Read the documentation to get started or browse the code. ## The Backend @@ -30,10 +30,10 @@ Now, install GNOME Flatpak facilitates the distribution of apps on Linux. If you decide to use Flatpak already when developing the app, you do not have to install any dependencies on your system. -Simply clone the template repository, open in GNOME Builder, and run the template app. +Simply clone the template repository, open in GNOME Builder, and run the template app. Follow the instructions in the readme file to create your own app. -{{ image(url="Environment.png", alt="A native GNOME app called Tuba") }} +{{ image(url="Environment.png", alt="GNOME Builder and a todo app") }} ## The Design @@ -45,7 +45,7 @@ The following screenshot serves as an example for GNOME's design language. ## Distribution The apps can be distributed using Flatpak. The most popular app store is Flathub. -Read the instructions in the official docs. +Read the instructions in the official docs. ## Aparoksha Interoperability This backend is part of the Aparoksha package. If you use default Aparoksha elements, they will render correctly on GNOME. diff --git a/content/backends/AppKit/index.md b/content/backends/AppKit/index.md deleted file mode 100644 index 8fe179b..0000000 --- a/content/backends/AppKit/index.md +++ /dev/null @@ -1,11 +0,0 @@ -+++ -title = "AppKit" -description = "Build fully native macOS apps." -date = 2024-09-13 -[taxonomies] -tags = ["macOS", "Aparoksha"] -[extra] -featured = true -+++ - -Hello diff --git a/content/backends/TermKit/Environment.png b/content/backends/TermKit/Environment.png new file mode 100644 index 0000000..2596638 Binary files /dev/null and b/content/backends/TermKit/Environment.png differ diff --git a/content/backends/TermKit/index.md b/content/backends/TermKit/index.md index 8775d8c..bd75813 100644 --- a/content/backends/TermKit/index.md +++ b/content/backends/TermKit/index.md @@ -1,12 +1,28 @@ +++ title = "TermKit" description = "Create simple user interfaces for terminal applications." -date = 2024-07-10 +date = 2024-10-13 authors = ["david-swift"] [taxonomies] tags = ["Linux", "macOS"] -[extra] -hot = false +++ -Hello +Create simple user interfaces for terminal applications. + +Read the documentation or browse the code here. + +## The Backend + +This backend is based on a fork of TermKit for Swift which is built on top of ncurses. + +## The Development Environment + +It is possible to develop and run TermKit applications on Linux and macOS. +The integrated terminals of GNOME Builder and VS Code are particularly helpful for quickly previewing the apps. + +{{ image(url="Environment.png", alt="GNOME Builder and a demo app", transparent=true) }} + +## Aparoksha Interoperability + +You can combine this backend with the Aparoksha umbrella backend. +As it is not part of the Aparoksha framework, you have to implement shared widgets yourself. diff --git a/content/backends/WinUI/App.png b/content/backends/WinUI/App.png new file mode 100755 index 0000000..9b7281d Binary files /dev/null and b/content/backends/WinUI/App.png differ diff --git a/content/backends/WinUI/Environment.png b/content/backends/WinUI/Environment.png new file mode 100755 index 0000000..82428ff Binary files /dev/null and b/content/backends/WinUI/Environment.png differ diff --git a/content/backends/WinUI/WinUI.png b/content/backends/WinUI/WinUI.png new file mode 100755 index 0000000..fbdc424 Binary files /dev/null and b/content/backends/WinUI/WinUI.png differ diff --git a/content/backends/WinUI/index.md b/content/backends/WinUI/index.md index 7625098..3c36b3c 100644 --- a/content/backends/WinUI/index.md +++ b/content/backends/WinUI/index.md @@ -1,11 +1,42 @@ +++ title = "WinUI" description = "Create apps for Microsoft Windows." -date = 2024-09-13 +date = 2024-10-14 [taxonomies] tags = ["Windows", "Aparoksha"] [extra] featured = true +banner = "WinUI.png" +++ -Hello +Create modern apps for Microsoft Windows. + +Start in the repository or browse the reference documentation. + +## The Backend + +The WinUI backend is based on the swift-winui bindings for WinUI. + +## The Development Environment + +You need a Windows installation to develop WinUI apps. + +VS Code is a great editor for working with WinUI for Swift. +Follow the instructions on the Swift website. + +{{ image(url="Environment.png", alt="VS Code and a simple demo app") }} + +## The Design + +Follow the official design guidelines when developing apps. +The following screenshot shows the WinUI 3 Gallery, showcasing WinUI's features. + +{{ image(url="App.png", alt="The WinUI Gallery app" transparent=true) }} + +## Distribution + +Create an installer via NSIS or another application. + +## Aparoksha Interoperability +This backend is part of the Aparoksha package. If you use default Aparoksha elements, they will render correctly on Windows. +You can call platform-specific widgets for Windows as well. diff --git a/content/backends/_index.md b/content/backends/_index.md index 1493f97..c764650 100644 --- a/content/backends/_index.md +++ b/content/backends/_index.md @@ -5,7 +5,7 @@ template = "article_list.html" page_template = "article.html" +++ -The backends listed here are based on the Meta package. +The backends listed here are based on the Meta package. They can be used in combination with the Aparoksha package. The backends marked with a star are part of the Aparoksha package. diff --git a/content/david/index.md b/content/david/index.md deleted file mode 100644 index e62eeb9..0000000 --- a/content/david/index.md +++ /dev/null @@ -1,13 +0,0 @@ -+++ -title = "Hi!" -+++ - -I'm David, the maintainer of the Aparoksha project. -You can find me on Mastodon, -this project's Gitea instance, -and on GitHub. - -If you benefit from this project and have enough money, donations are appreciated to compensate the server costs. -Thank you! - -Don't forget to share your projects on the Fediverse and in the Aparoksha forums :) diff --git a/content/docs/index.md b/content/docs/index.md index 21c8ef3..034a92c 100644 --- a/content/docs/index.md +++ b/content/docs/index.md @@ -1,6 +1,21 @@ +++ title = "Documentation" -featured = true +description = "A collection of links to the documentation of the components of Aparoksha." [taxonomies] tags = ["Linux", "macOS", "Windows", "Aparoksha"] +++ + +The following links lead to the API documentation of individual parts of the Aparoksha framework. + +## Foundation + +- [Meta](https://meta.aparoksha.dev/) includes guides about the fundamental principles of the Aparoksha project and guides on how to create backends and apps +- [Levenshtein Transformations](https://levenshtein-transformations.aparoksha.dev) +- [Localized](https://localized.aparoksha.dev) +- [SQLite for Meta](https://meta-sqlite.aparoksha.dev) + +## Aparoksha Backends + +- [Adwaita for Swift](https://adwaita-swift.aparoksha.dev/documentation/adwaita/) contains multiple articles and a detailed tutorial +- [WinUI for Swift](https://winui-swift.aparoksha.dev/documentation/winui_swift/) + diff --git a/content/hig/index.md b/content/hig/index.md deleted file mode 100644 index 54c509b..0000000 --- a/content/hig/index.md +++ /dev/null @@ -1,6 +0,0 @@ -+++ -title = "Human Interface Guidelines" -featured = true -[taxonomies] -tags = ["Linux", "macOS", "Windows", "Aparoksha"] -+++