# [New pre-release version 2.11 is out! 🥳](https://github.com/upscayl/upscayl/releases/latest)
# [Download v2.10! ⬇️](https://github.com/upscayl/upscayl/releases/latest)
# 🆙 Upscayl
#### Free and Open Source AI Image Upscaler
Upscayl lets you enlarge and enhance low-resolution images using advanced AI algorithms.
Enlarge images without losing quality. It's almost like magic! 🎩🪄
Upscayl is a cross-platform application built with the Linux-first philosophy.
This means that Linux users receive pre-release builds earlier, but Upscayl itself is available on all major desktop operating systems :)
**https://upscayl.org**
![Screenshot](https://raw.githubusercontent.com/upscayl/upscayl.github.io/main/static/upscayl-desktop.png)
> [!IMPORTANT]
> You'll need a Vulkan compatible GPU to upscale images. Many CPU and iGPUs do not work but no harm in trying.
# 👨💻 Installation
### 🐧 Linux
Upscayl should be available on the software listings of most Linux operating systems. Your distro's Store app might also support the [Flatpak](https://flatpak.org/setup) or Snap version.
#### 💼 Portable Method
1. Go to [releases section](https://github.com/upscayl/upscayl/releases/latest)
2. Download the `upscayl-x.x.x-linux.AppImage` file.
3. Right Click AppImage -> Go to Permissions tab -> Check 'allow file to execute' and then double click the file to run Upscayl.
*You can also choose to install using other formats like RPM (Fedora), DEB (Debian/Ubuntu based), and ZIP (Any x86 Linux OS).*
### 🍎 macOS
(MacOS 12 and later)
1. Go to [releases section](https://github.com/upscayl/upscayl/releases/latest)
2. Download the `upscayl-x.x.x-mac.dmg` file.
3. Double click dmg, drag Upscayl icon into Applications folder.
4. Open Finder, click 'Applications' tab in the left sidebar. Find Upscayl and right click on it. Select 'Open'.
5. In the window that appears, press 'Open' yet again.
#### 🍺 Homebrew
`brew install --cask upscayl`
### 🐌 Windows
(Windows 10 and later)
1. Go to [releases section](https://github.com/upscayl/upscayl/releases/latest)
2. Download the `.exe` file.
3. Double click exe file, wait for installation, profit.
# 👨🏫 Documentation - Tutorials and Guides
Check out our Documentation [here](https://docs.upscayl.org/).
- [Try out even more new models!](https://github.com/upscayl/custom-models)
- [Convert your own models](https://github.com/upscayl/upscayl/wiki/%F0%9F%96%A5%EF%B8%8F-Model-Conversion---Create-more-AI-models!)
- [Compatibility List](https://github.com/upscayl/upscayl/wiki/Compatibility-List)
- [Troubleshooting](https://github.com/upscayl/upscayl/wiki/Troubleshooting)
# ⚖️ Results
Check out Upscayl before/after comparisons [here](COMPARISONS.MD).
# 🤫 Roadmap
You can track all the progress here: https://github.com/orgs/upscayl/projects/1
- Fix bugs
- Make the whole world use FOSS (WIP 🚧)
# 🛠 Development
I recommend using Volta: https://volta.sh for installing Node.js.
Download and install volta, then do: `volta install node`.
## 🏃 Running
> [!NOTE]
> If you are not willing to install [git](https://git-scm.com/downloads), you can skip the first line, download [the source zip](https://github.com/upscayl/upscayl/archive/refs/heads/main.zip) and extract it to `upscayl` instead and carry on with the rest of the instructions.
```sh
git clone https://github.com/upscayl/upscayl
cd upscayl
# INSTALL DEPENDENCIES
npm install
# RUN THE DEVELOPMENT SERVER LOCALLY
## YOUR LOGS WILL NOW APPEAR IN THE TERMINAL
npm run start
```
## 🏗️ Building
```sh
# INSTALL DEPENDENCIES
npm install
# PACKAGE THE APP
npm run dist
# PUBLISH THE APP, MAKE SURE TO ADD GH_TOKEN= IN SHELL
# ONLY DO THIS IF YOU'RE A MAINTAINER
npm run publish-app
```
# 🤓 FAQ
- **How does Upscayl work?**
- Upscayl uses AI models to enhance your images by guessing what the details could be. It uses Real-ESRGAN and Vulkan architecture to achieve this. [Our backend](https://github.com/upscayl/upscayl-ncnn) is fully open-source under the AGPLv3 license.
- **I don't see a drastic change in my upscaled image. Why is that?**
- Upscayl can enhance low resolution images and images that are pixelated but it cannot de-blur or do focus adjustment on your image. If your image is out-of-focus or totally blurred, Upscayl is not the right tool for it. Please use images that are similar to the [examples we've given here.](COMPARISONS.MD)
- **Is there a CLI available?**
- The CLI tool is called [upscayl-ncnn](https://github.com/upscayl/upscayl-ncnn).
- **Do I need a GPU for this to work?**
- Yes, unfortunately. NCNN Vulkan requires a Vulkan-compatible GPU. Upscayl won't work with **most** iGPUs or CPUs. But hey, no harm in trying ;)
- @Wyrdgirn has contributed a workaround for Windows and Linux in [#390](https://github.com/upscayl/upscayl/issues/390)! Nobody knows how to manipulate the macOS and Haiku frameworks...
- **I stopped the magic Batch Upscayl and my images haven't been processed, compressed, or are in the wrong scale!**
- When a model doesn't support an action, Upscayl will finish upscayling all the images first before post-processing them. What this means is that you should simply **wait** for the process to finish.
- **How can I contribute?**
- You can report issues, fix code and add features by submitting PRs, or donate! 😊
- **What's the GPU ID for?**
- It is for selecting which GPU to use. The specific procedure is detailed in the [Wiki](https://github.com/upscayl/upscayl/wiki/Guide).
- Note that for Windows systems, if Upscayl is not set to performance mode, the system may override this setting.
- **Where do I find more models?**
- More models can be taken from here: https://github.com/upscayl/custom-models
# 🎁 Donate
# ❤ Credits
- Real-ESRGAN for their wonderful research work.
[Real-ESRGAN: Copyright (c) 2021, Xintao Wang](https://github.com/xinntao/Real-ESRGAN/)
- @JanDeDinoMan, @xanderfrangos, @Fdawgs, @keturn for their code contributions
- @aaronliu0130 for providing community support :)
- Foolhardy for their [Remacri model](https://upscale.wiki/wiki/Model_Database).
- [Kim2091](https://upscale.wiki/wiki/User:Kim2091) for their [Ultrasharp and Ultramix Balanced model](https://upscale.wiki/wiki/Model_Database).
- @NicKoehler for their amazing logo :)
#