Awesome Fuchsia Save Abandoned

A curated list of awesome Fuchsia OS resources, tools and information.

Project README

A curated list of awesome Fuchsia resources, tools and information. If you find anything interesting that belongs on the list, please create a pull request ?

What is Fuchsia?

Fuchsia is a modular, capability-based operating system. Fuchsia runs on modern 64-bit Intel and ARM processors. It is created by Google and completely open source. Currently it has not been officially announced by Google but it is expected to be revealed at the IO 2019.

Contents

Latest News

Architecture

Zircon (microkernel)

Zircon is the core platform that powers the Fuchsia OS. Zircon is composed of a microkernel as well as a small set of userspace services, drivers, and libraries necessary for the system to boot, talk to hardware, load userspace processes and run them, etc.

Garnet

Garnet is the first Fuchsia layer above the kernel. It contains a variety of low-level things that every OS needs including device drivers (network, graphics, etc) and software installation. The Garnet UI services are called Mozart.

Scenic (graphics engine)

Scenic is a Garnet service that composes graphical objects from multiple processes into a shared scene graph. The objects can cast shadows or reflect light onto each other, even if the originating processes have no knowledge of each other.

  • Introduction - Explains concepts of Scenic including Nodes, Scenes and Compositors
  • Source - Scenic source code

Gfx

Gfx owns the scene graph and is responsible for rendering.

Input

Input is responsible for routing input events to clients, which also involves coordinating gesture recognition across clients

  • Introduction - How RootPresenter and Scenic process visually-related input Source - Input source code

Escher

Escher is a Vulkan-based rendering library used by the Gfx system

Amber (updater)

Amber is an update system with the ambition of updating all components running on a Fuchsia system whether that component is a kernel, a bootloader, a system service, an application, etc.

Peridot

Peridot provides the services needed to create a cohesive, customizable, multi-device user experience assembled from modules, stories, agents, entities, and other components.

Modular

Modular is the application framework for Fuchsia. It manages user experiences by composing UI, data, and users from a diverse set of components into logical and visual containers called Stories.

  • Overview - Basic concepts of Modular
  • Simple Example - Simple Fuchsia program (C++) using the modular framework

Ledger (cloud sync)

Ledger is a distributed storage system for Fuchsia. Each application running on behalf of a particular user has a separate data store managed by Ledger. It is transparently synchronized across devices of its user by cloud providers.
The goal of ledger is that the user does not notice it while it

Topaz

Topaz contains four major categories of software: modules, agents, shells, and runners.
For example, modules include the calendar, email, and terminal modules, shells include the base shell and the user shell, agents include the email and chat content providers, and runners include the Web, Dart, and Flutter runners.

  • Simple App - Very simple Flutter App for Fuchsia
  • Mine Sweeper - Flutter implementation of minesweeper for Fuchsia
  • Source - Topas source code

Development

Build Fuchsia

You can build and run Fuchsia yourself.

SDK

The Fuchsia Core SDK contains a small set of libraries and tools required to start building and running programs that target Fuchsia

Flutter

Flutter allows you to build beautiful native apps on iOS, Android and Fuchsiafrom a single codebase.

FIDL

The Fuchsia Interface Definition Language is the language used to describe interprocess communication (IPC) protocols used by programs running on the Fuchsia Operating System.

Fuchsia Packages

A Fuchsia package is one or more collections of files that provide one or more programs, components or services for a Fuchsia system.

Emulators

  • Qemu - A generic machine emulator and virtualizer that works with Fuchsia
  • Fuchsia Web Demo - Fuchsia Demo running in your browser
  • Armadillo APK - An APK of the (outdated) Armadillo UI

Community

  • r/Fuchsia - Fuchsia subreddit with news and information about Fuchsia
  • Fuchsia OS 中文社区 - Fuchsia China Telegram Group with news and information about Fuchsia

License

CC0

To the extent possible under law, Simon Leier has waived all copyright and related or neighboring rights to this work.

Open Source Agenda is not affiliated with "Awesome Fuchsia" Project. README Source: leisim/awesome-fuchsia
Stars
133
Open Issues
2
Last Commit
4 years ago

Open Source Agenda Badge

Open Source Agenda Rating