<img width="1920" height="1080" alt="image" src="https://github.com/user-attachments/assets/c6253173-9fe4-47d0-9fef-f9792c25558a" />


# Praya

Praya is the successor to Manokwari Desktop. Although inspired by Manokwari, Praya is a fundamentally different project in terms of system architecture and design goals. Because of these differences, it is intentionally released under a new name.

Manokwari Desktop was originally built on top of WebKitGTK and designed to run smoothly on low-spec or constrained computers (komputer prihatin). Its architecture focused on lightweight web technologies to deliver a desktop-like experience.

Praya, on the other hand, takes a completely different approach. It is built as a pure GNOME Shell Extension, fully integrated with the GNOME ecosystem and designed for modern GNOME environments

One core philosophy remains the same between Manokwari and Praya: to aim to lower the barrier to contribution by using JavaScript as the primary development language

While Praya is technically a new project, it still aims to follow the UX style and interaction patterns of Manokwari Desktop. The goal is to preserve the familiar feel, simplicity, and workflow of Manokwari, while re-implementing it using a modern and more maintainable GNOME Shell–based architecture.

## Services

A few of Praya's features are depend on Praya Service (https://github.com/BlankOn/praya-service).

## Project Status

⚠️ Praya is still under heavy development. Please expect bugs, incomplete features, and major breaking changes as the project evolves.

## Build variants

Praya builds in two variants from one source tree:

- **BlankOn** (default): uuid `praya@blankonlinux.id`, with the BlankOn logo as
  the start button's default and the BlankOn-specific packaging and menus.
- **Generic** (other distributions): uuid `praya-generic@blankonlinux.id`, with
  no BlankOn branding. The start button defaults to an *Applications* icon and
  label, and the "Default logo" option is removed.

Enable the generic variant at build time with the `PRAYA_GENERIC=1` environment
variable. For local development, the `make` targets with a `-generic` suffix set
it for you:

```
make run-generic
make run-mutter-devkit-generic
make install-user-generic
make test-generic
```

The variant is generated by `tools/gen-distro.sh` into the (git-ignored)
`distro.js`, `distro.py` and `metadata.json` files.

## License

Praya is licensed under the MIT License.
