Customizable browser's home page to interact with your homeserver's Docker containers (e.g. Sonarr/Radarr)

Overview

Homarr


CI Status GitHub release (latest SemVer) Docker Pulls

A homepage for your server.
Demo ↗️ Install ➡️

Join the discord!


📃 Table of Contents

🚀 Getting Started

ℹ️ About

Homarr is a simple and lightweight homepage for your server, that helps you easily access all of your services in one place.

⤴️ Back to Top

💥 Known Issues

  • Posters on the Calendar get blocked by adblockers. (IMDb posters)
  • Editing a service creates a duplicate (#97)
  • Used search engine not properly selected (#35)

⤴️ Back to Top

Installation

🐳 Deploying from Docker Image

Supported architectures: x86-64, ARM, ARM64

Requirements:

Standard Docker Install

docker run --name homarr -p 7575:7575 -v /data/docker/homarr:/app/data/configs -d ghcr.io/ajnart/homarr:latest

Docker Compose

---
version: '3'
#--------------------------------------------------------------------------------------------#
#                               Homarr -  A homepage for your server.                        #
#--------------------------------------------------------------------------------------------#
services:
  homarr:
    container_name: homarr
    image: ghcr.io/ajnart/homarr:latest
    restart: unless-stopped
    volumes:
      - /data/docker/homarr:/app/data/configs
    ports:
      - '7575:7575'

Getting EACCESS errors in the logs? Try running sudo chmod 775 /directory-you-mounted-to!

🛠️ Building from Source

Requirements:

Installing

  • Clone the GitHub repo: git clone https://github.com/ajnart/homarr.git & cd homarr
  • Install all dependencies: yarn install
  • Build the source: yarn build
  • Start the NextJS web server: yarn start
  • Note: If you want to update the code in real time, launch with yarn dev

🔧 Configuration

🧩 Integrations

Homarr natively integrates with your services. Here is a list of all supported services.

Emby The Emby integration is still in development.

Lidarr The Lidarr integration is still in development.

Sonarr Sonarr needs an API key.
Make a new API key in Advanced > Security > Create new API key
Current integration: Upcoming media is displayed in the Calendar module.

Plex The Plex integration is still in development.

Radarr Radarr needs an API key.
Make a new API key in Advanced > Security > Create new API key
Current integration: Upcoming media is displayed in the Calendar module.

qBittorent The qBittorent integration is still in development.

⤴️ Back to Top

🧑‍🤝‍🧑 Multiple Configs

Homarr allows the usage of multiple configs. You can add a new config in two ways.

Drag-and-Drop

  1. Download your config from the Homarr settings.
  2. Change the name of the .json file and the name in the .json file to any name you want (just make sure it's different).
  3. Drag-and-Drop the file into the Homarr tab in your browser.
  4. Change the config in settings.

Using a filebrowser

  1. Locate your mounted default.json file.
  2. Duplicate your default.json file.
  3. Change the name of the .json file and the name in the .json file to any name you want (just make sure it's different).
  4. Refresh the Homarr tab in your browser.
  5. Change the config in settings.

⤴️ Back to Top

🐻 Icons

The icons used in Homarr are automatically requested from the dashboard-icons repo.

Icons are requested in the following way:
Grab name > Replace ' ' with '-' > .toLower() > https://cdn.jsdelivr.net/gh/walkxhub/dashboard-icons/png/{name}.png

⤴️ Back to Top

📊 Modules

Modules are blocks shown on the sides of the Homarr dashboard that display information. They can be enabled in settings.

Clock Module The clock module will display your current time and date.

Calendar Module The Calendar module uses integrations to display new content.

⤴️ Back to Top

🔍 Search Bar

The Search Bar will open any Search Query after the Query URL you've specified in settings.

(Eg. https://www.google.com/search?q=*Your Query will be inserted here*)

⤴️ Back to Top

💖 Contributing

Please read our Contribution Guidelines

All contributions are highly appreciated.

⤴️ Back to Top

Comments
  • 📝 add docusaurus documentation

    📝 add docusaurus documentation

    Category

    Documentation

    Overview

    • Add docs/ directory for Docusaurus documentation
    • Migrate documentation from Wiki to https://homarr-docs.vercel.app/

    Issue Number (if applicable)

    none

    New Vars (if applicable)

    none

    Screenshot (if applicable)

    image

    opened by manuel-rw 29
  • Add NZBGet as download client

    Add NZBGet as download client

    Thank you for contributing to Homarr! So that your Pull Request can be handled effectively, please populate the following fields (delete sections that are not applicable)

    Category

    One of: Bugfix / Feature / Code style update / Refactoring Only / Build related changes / Documentation / Other (Please specify!)

    Feature

    Overview

    Briefly outline your new changes...

    • Added NZBGet to the Sabnzbd module.
    • Changed Sabnzbd naming to "Usenet" to reflect that both NZBGet & Sabnzbd can be used now.
    • Implemented NZBGet API

    Issue Number (if applicable)

    Related issue: #00

    #282

    New Vars (if applicable)

    If you've added any new build scripts, environmental variables, config file options, dependency please outline here.

    I added a new library that helps in working with the NZBGet api: "nzbget-api": "0.0.3"

    Screenshot (if applicable)

    If you've introduced any significant UI changes, please include a screenshot.

    image image
    opened by jonjon1123 21
  • Change window.open to same tabe instead of new tab

    Change window.open to same tabe instead of new tab

    Change the Search module to open results in the same tab.

    When using homarr as the default page for a new tab it makes more sense to open search results in the same tab rather than another new tab. Also added a toggle if someone prefers it to still be in a new tab.

    Category

    One of: Bugfix / Feature

    Overview

    Briefly outline your new changes... Search module opens results in same tab instead of new tab by default (has toggle)

    New Vars (if applicable)

    If you've added any new build scripts, environmental variables, config file options, dependency please outline here. Added a new variable in the Settings interface to track the toggle switch state. Added new json files for the toggle text for translations.

    opened by Momcilo42 19
  • Image connection broken (still)

    Image connection broken (still)

    Environment

    Docker

    Version

    0.9.1

    Describe the problem

    Similar to #335, some of my icons are broken on just the main dashboard. When I click they show up just fine.

    My situation is a bit different from #335, I'm using direct URLs to the png. https://cdn.overleaf.com/img/ol-brand/overleaf_og_logo.png for example. slightly

    Additional info

    Doesn't work: image image image

    Main Dashboard: image

    Please tick the boxes

    • [X] You've read the docs
    • [X] You've checked for duplicate issues
    • [X] You've tried to debug yourself
    🐛 Bug 
    opened by WahidBawa 17
  • Couldn't find a script named

    Couldn't find a script named "build"

    Environment

    NodeJS

    Version

    0.10.5

    Describe the problem

    I am following the installation instructions to the letter. However I am getting this error when running yarn build:

    Usage Error: Couldn't find a script named "build".
    
    $ yarn run [--inspect] [--inspect-brk] [-T,--top-level] [-B,--binaries-only] <scriptName> ...
    

    or if I use npm

    Unknown command: "build"
    
    To see a list of supported npm commands, run:
      npm help
    

    The only commands I have executed are git clone ..., cd ..., yarn install/npm install, and then I get that error when running yarn build/npm build.

    Am I doing something wrong?

    Sadly. installing from docker is not an option for me.

    Additional info

    NodeJS version: 18.12.1 OS: Armbian 22.08.8 Bullseye

    Please tick the boxes

    • [X] You've read the docs
    • [X] You've checked for duplicate issues
    • [X] You've tried to debug yourself
    🐛 Bug 
    opened by stpnwf 16
  • Add service button issue (torrents module)

    Add service button issue (torrents module)

    Environment

    Docker

    Version

    0.10.0

    Describe the problem

    When torrents module is enabled, clicking on some parts of the "Add Service" button will open torrent module's settings instead of opening "add service" popup. The affected area is mostly center.

    Additional info

    Video:

    https://user-images.githubusercontent.com/56438628/188941400-9fb4d867-c30d-4e0b-b30a-8b47dd70e0d7.mp4

    Please tick the boxes

    • [X] You've read the docs
    • [X] You've checked for duplicate issues
    • [X] You've tried to debug yourself
    🐛 Bug 
    opened by pacjo 16
  • :sparkles: Add option for custom CSS to Customization Settings

    :sparkles: Add option for custom CSS to Customization Settings

    Category

    Feature

    Overview

    Adds a textarea for sutom css to the Customize Settings Tab. The css is loaded in a