<p align="center">
  <img width="80%" src="https://github.com/dahliaOS/brand/blob/master/pangolin/svg/logotypewhitetext.svg#gh-dark-mode-only" />
  <img width="80%" src="https://github.com/dahliaOS/brand/blob/master/pangolin/svg/logotypeblacktext.svg#gh-light-mode-only" />
</p>
 
<p align="center">
<a href="https://dahliaos.io">Website</a> •
<a href="https://dahliaos.io/discord">Discord</a> •
<a href="https://dahliaos.io/download">Releases</a> •
<a href="https://dahliaos.io/donate">Donate</a> •
<a href="https://docs.dahliaos.io">Documentation</a>

# Pangolin Desktop
[![Build and Deploy to Web](https://github.com/dahliaOS/pangolin_desktop/actions/workflows/web.yml/badge.svg)](https://github.com/dahliaOS/pangolin_desktop/actions/workflows/web.yml)
[![Locale generator](https://github.com/dahliaOS/pangolin_desktop/actions/workflows/locale_gen.yml/badge.svg)](https://github.com/dahliaOS/pangolin_desktop/actions/workflows/locale_gen.yml)
[![Demo](https://img.shields.io/website?label=Web%20Build&url=https%3A%2F%2Fweb.dahliaos.io&style=for-the-badge)](https://web.dahliaos.io)
[![Crowdin](https://badges.crowdin.net/e/1a53a75fb38f15843d4eb6d9b9e4215a/localized.svg?style=for-the-badge)](https://translate.dahliaos.io/pangolin)

 - 🖥 **Pangolin** is the desktop shell of dahliaOS.
 - 💙 **Written** in Dart/Flutter.
 - 🏝 **[Utopia](https://github.com/dahliaOS/utopia)** is the window manager of Pangolin.
 - 🐚 **Pangolin** was named after a shelled animal like the [Armadillo UI](https://9to5google.com/2018/12/26/fuchsia-armadillo-ui-gone/).
 - 🌐 **Check** the web preview [here](https://web.dahliaos.io).

<p align="center">
  <img width="100%" src="https://docs.dahliaos.io/docs/pangolin/settings.webp"
</p>

> Settings and start menu, commit [876180d](https://github.com/dahliaOS/pangolin_desktop/commit/876180df15d3b6c8720fb7474d1bcf1b5202fc67).

<p align="center">
  <img width="100%" src="https://docs.dahliaos.io/docs/pangolin/search.webp"
</p>

> Calculator, Terminal, Notes and search, commit [876180d](https://github.com/dahliaOS/pangolin_desktop/commit/876180df15d3b6c8720fb7474d1bcf1b5202fc67).

## Development

To develop and locally test Pangolin:

### Step 1. Install development tools

1. Install [Flutter](https://docs.flutter.dev/get-started/install)
2. Install an IDE of your choice (we recommend [VSCode](https://code.visualstudio.com/))
    * We also recommend installing Dart and Flutter extensions if you're opting in for VSCode.
    For other IDEs, please inform yourself.

### Step 2. Run Pangolin

**Note**: You can run Pangolin on any platform that Flutter supports but we recommend running it on Linux as some features of Pangolin are designed exclusively for Linux and won't work on other platforms.

Run Pangolin by running:

```
make run target=linux
```

List of targets:
- linux
- windows
- macos

Flutter has hot reloading so no need to restart the instance when it's running!

## Contribute

If you're wondering how to contribute to the project, please refer to [CONTRIBUTING.md](/CONTRIBUTING.md)

## Translate

If you're interested in translating Pangolin, click [here](https://github.com/dahliaOS/pangolin_desktop/blob/main/CONTRIBUTING.md#translations) for more information on how to do so!


## License

<p align="left">
  <img width="30%" src="https://github.com/dahliaOS/brand/blob/main/dahliaOS/logotype/svg/logotype-dark.svg#gh-dark-mode-only"/>
  <img width="30%" src="https://github.com/dahliaOS/brand/blob/main/dahliaOS/logotype/svg/logotype-light.svg#gh-light-mode-only"/>
</p>

Copyright @ 2019-2023 - The dahliaOS Authors - contact@dahliaos.io

This project is licensed under the [Apache 2.0 license](/LICENSE)
