From 65654282a98cb0590d498e4ed9c924f97646f1dc Mon Sep 17 00:00:00 2001 From: Aylur Date: Wed, 25 Sep 2024 23:22:01 +0000 Subject: docs: restructure --- docs/getting-started/supported-languages.md | 65 ----------------------------- 1 file changed, 65 deletions(-) delete mode 100644 docs/getting-started/supported-languages.md (limited to 'docs/getting-started/supported-languages.md') diff --git a/docs/getting-started/supported-languages.md b/docs/getting-started/supported-languages.md deleted file mode 100644 index 06ce51c..0000000 --- a/docs/getting-started/supported-languages.md +++ /dev/null @@ -1,65 +0,0 @@ -# Supported Languages - -## JavaScript - -The main intended usage of Astal is in TypeScript with [AGS](/ags/first-widgets). -It supports JSX and has a state management solution similar to web frameworks. -Only a minimal knowledge of JavaScript's syntax is needed to get started. - -:::info -The runtime is [GJS](https://gitlab.gnome.org/GNOME/gjs) and **not** nodejs -::: - -Examples: - -- [Simple Bar](https://github.com/Aylur/astal/tree/main/examples/js/simple-bar) -![simple-bar](https://github.com/user-attachments/assets/a306c864-56b7-44c4-8820-81f424f32b9b) - -## Lua - -Similar to how there is a [TypeScript](https://github.com/Aylur/astal/tree/main/core/gjs) lib for GJS, there is also an accompanying library for [Lua](https://github.com/Aylur/astal/tree/main/core/lua). - -Unfortunately, I have encountered very heavy [performance issues]() with [lgi](https://github.com/lgi-devs/lgi), -and so currently I don't recommend using Lua for full desktop shells, but only for static -components that don't render child nodes dynamically, bars and panels for example. - -Examples: - -- [Simple Bar](https://github.com/Aylur/astal/tree/main/examples/lua/simple-bar) -![simple-bar](https://github.com/user-attachments/assets/a306c864-56b7-44c4-8820-81f424f32b9b) - -## Python - -There was a WIP [library for python](https://github.com/aylur/astal/tree/feat/python), to make it behave similar to the above two -but I don't plan on finishing it, because I'm not a fan of python. -If you are interested in picking it up, feel free to open a PR. -Nonetheless you can still use python the OOP way [pygobject](https://pygobject.gnome.org/tutorials/gobject/subclassing.html) intended it. - -Examples: - -- [Starter Bar](https://github.com/Aylur/astal/tree/main/examples/py/starter-bar) - -## Vala - -Vala is a language that simply put uses C# syntax and compiles to C. -It is the language most of Astal is written in. I would still recommend -using TypeScript or Lua over Vala as they don't need a build step. - -Examples: - -- [Simple Bar](https://github.com/Aylur/astal/tree/main/examples/vala/simple-bar) -![simple-bar](https://github.com/user-attachments/assets/a306c864-56b7-44c4-8820-81f424f32b9b) - -## C - -I don't recommend using C as it requires quite a lot of boilerplate, both for -build step and code. - -Examples: - -- TODO - -## Other languages - -There a few more that supports gobject-introspection, most notably Haskell, Rust and C++. -If you are interested and feel like contributing, PRs are welcome for bindings, and examples. -- cgit v1.2.3