Git Product home page Git Product logo

homarr's Introduction

Banner

  Latest Release (Semver)   CI Status  

Demo ✨ Install 💻 Translations 🈺 Discord 👋

Simplify the management of your server with Homarr - a sleek, modern dashboard that puts all of your apps and services at your fingertips. With Homarr, you can access and control everything in one convenient location. Homarr seamlessly integrates with the apps you've added, providing you with valuable information and giving you complete control. Installation is a breeze, and Homarr supports a wide range of deployment methods.



Features Section

  • 🖌️ Highly customizable with an extensive drag and drop grid system
  • ✨ Integrates seamlessly with your favorite self-hosted applications
  • 📌 Easy and fast app management - no YAML involved
  • 🙊 Advanced secrets' management system for enhanced security
  • 📄 Detailed documentation and active community
  • 🔍 Search through the web or supported integrations in an instant
  • 🏴󠁧󠁢󠁮󠁩󠁲󠁿 Monitor your application with a built-in status system
  • 🦞 Comprehensive built-in icon picker with over 7000 icons
  • 🐳 Easy deployment with Docker, unRAID, and Synology
  • 🚀 Compatible with any major consumer hardware (x86, Raspberry Pi, old laptops, ...)


Widgets & Integrations Section

Homarr has a built-in collection of widgets and integrations, that connect to your applications and enable you to control them directly from the dashboard. Each widget and integration has a comprehensive documentation Homarr will integrate with the following applications:

📥 Torrent clients

📥 Usenet clients

📺 Media servers

📚 Media collection managers

🎞️ Media request managers

🚫 DNS ad-blockers

Other integrations

We're constantly adding new integrations and widgets, which will enhance your experience even further.



Preview Section

Untitled.video.-.Made.with.Clipchamp.mp4


Installation Section

Since we are updating Homarr very frequently, we recommend reading our official installation guides:



Contribute Section Homarr is maintained by motivated developers in their free-time. We work for fun and learning on this project.

Hence, we're glad for all the help and support we can get. Although a donation is appreciated, there are other ways you can support us.

You can also support us by helping with translating the entire project to as many language as possible or contributing directly to the code or documentation.

Please read our Contribution Guidelines

All contributions, regardless of their size or scope, are welcome and highly appreciated! Thank you ❤️

Alt Covered by Argos Visual Testing

homarr's People

Contributors

aimsucks avatar ajnart avatar bonfire avatar c00ldude1oo avatar deepsource-autofix[bot] avatar deepsource-io[bot] avatar dependabot[bot] avatar dslatt avatar hillaliy avatar intern0te avatar ishaanparlikar avatar jannesv avatar larveyofficial avatar lumilias avatar malong11-007 avatar manuel-rw avatar mauricenino avatar meierschlumpf avatar momcilo42 avatar renovate[bot] avatar richyhbm avatar sedemal avatar skeeww avatar spillebulle avatar spkesde avatar tancak avatar tuggan avatar walkxcode avatar wieli99 avatar zareix avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

homarr's Issues

🐛 Little to Zero responsiveness when resizing!

Environment

Any

Version

Any

Describe the problem

Resizing the browser, or viewing on a device with a smaller screen will cause:

  • Icons to overlap
  • Horizontal scrollbars to appear

Related issue: #3

Additional info

image
image
image

Please tick the boxes

qBittorrent integration

  • Ask the qbit user and pass in the add service form
  • Add a component to display up/down speeds
  • Add an option for the refresh time in MS. Possibly with a slider.

Icon alignment out for specific icons

Environment

Docker

Version

0.2.0

Describe the problem

HOMARR_VERSION=0.2.0
NODE_VERSION=16.15.0
YARN_VERSION=1.22.18

When populating a list of services using Firefox v100.0 the icons for Home Assistant and Netcam Studio are bottom aligned as shown here:

image

The same issue is visible in Chrome v101.0.4951.64.

Additional info

No response

Please tick the boxes

Plex integration

Plex integration using Mantine's spotlight needs :

  • Asking for API key in add services component
  • Use the API key to list all the medias available on the Plex instance
  • Map those medias to the spotlight and make them openable
  • Add a keybind to open the search bar directly

[✨ Feature] Application Icon

Describe the feature you would like to see

Unless i am going blind i cannot see an "icon" for this app?

Priority

Medium (Would be very useful)

Base URL

Describe the feature you would like to see

Add native support for a base_url to support running under a subdirectory (as opposed to a subdomain) for reverse proxies. The fewer DNS names exposed publicly the smaller the attack surface.

Subdirectory
https://mydomain.net/dashboard

Subdomain
https://dashboard.mydomain.net

Priority

Medium (Would be very useful)

Readarr Integration

Describe the feature you would like to see

Add support for Readarr API.

Priority

Medium (Would be very useful)

Dark mode not saving for some people

I think i may have broke something while building. That's why i haven't a pull request yet. It runs but i am not able to see Sonarr or Radarr data, after adding api keys Also dark mode resets after refresh

havent tried sonarr and radarr apis but yes dark mode isnt sticking.

Originally posted by @axsddlr in #36 (comment)

Dark mode not staying for some people.
Might be a cookie problem ?
Solution: Save dark mode in user settings or fix the cookies issue directly

Use a proxy to pass requests.

Currently, the client makes the requests to the services.
It was supposed to be this way because Homarr was supposed to be hosted statically on vercel for people to use without deployment.

Now that it's self hosted and has a backend, we can utilize a proxy for multiple advantages

  • Connection from the outside world (share your dashboard URL)
  • Faster response times
  • Other benefits (please reply to this issue)

No dynamic scaling or resizing

Environment

Docker

Version

0.2.0

Describe the problem

My resolution is 2245 x 1504. When viewing the Homarr page, the columns do not rescale appropriately:

image

There are vertical and horizontal scroll bars.

Additional info

Resizing the window does not cause the services rows and columns to resize:
image

Please tick the boxes

Docker Label Support

Describe the feature you would like to see

Add support so that apps can be added to the dashboard vis docker labels similarly to plugsy and flame.

Priority

High (App breaking feature)

[✨ Feature] UnRaid build

Describe the feature you would like to see

I would like to see this on the UnRaid community apps so I could easily use it on my server build.

Priority

Medium (Would be very useful)

Working with HTTPs and HTTP

Currently, the public deployment url is set to https://myhomepage-one.vercel.app/ which is HTTPs by Vercel's default. However, when interacting with local services, we often need to use IPs such as localhost or even 127.0.0.1 which are local and use HTTP requests.
After looking for an answer, I was not able to find a correct way to circumvent this. The way I see it :

  • Self sign your connection to localhost
  • Self host your own MHP
  • Use MHP from an HTTP url
    Any help about this topic would be appreciated

Changeable wallpaper feature.

Make the background changeable with a slider to adjust opacity/blur radius.
This would require that :

  • Items in the app shelf are transparent
  • Setting to link a background image URL in the settings menu

adding long names to source causing Icon misalignment

Environment

Docker

Version

latest

Describe the problem

As issue title states, when adding a source with a long name title the icon will misalign

Additional info

image

Suggestion

either add a character limit that will not mess with the text and img bounds or the coding need to account for long names

Please tick the boxes

[🐛 Bug] Permission denied when writing configs

Environment

Docker

Version

dev

Describe the problem

Getting permissions denied errors when reading/writing configs.

Listening on port 7575
Error: EACCES: permission denied, open 'data/configs/default.json'
    at Object.openSync (node:fs:585:3)
    at Object.writeFileSync (node:fs:2170:35)
    at Put (/app/.next/server/pages/api/configs/[slug].js:46:27)
    at _slug_ (/app/.next/server/pages/api/configs/[slug].js:76:16)
    at Object.apiResolver (/app/node_modules/next/dist/server/api-utils/node.js:184:15)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at async NextNodeServer.runApi (/app/node_modules/next/dist/server/next-server.js:397:9)
    at async Object.fn (/app/node_modules/next/dist/server/base-server.js:473:37)
    at async Router.execute (/app/node_modules/next/dist/server/router.js:233:32)
    at async NextNodeServer.run (/app/node_modules/next/dist/server/base-server.js:583:29) {
  errno: -13,
  syscall: 'open',
  code: 'EACCES',
  path: 'data/configs/default.json'
}

Additional info

No response

Please tick the boxes

Have an offline/online status indicator for each service

Description

My use-case is that some services may be deliberately offline as part of a WoL host. But I can also see this being used as a general "is it down?" status indicator.

Bonus points: it would be nice for some services to be marked as "WoL service" such that if it is indicated to be offline, Homarr can bring it online by sending the WoL magic packet.

Priority

Low (Nice-to-have)

Category support

Describe the feature you would like to see

Add category support for custom grouping of applications.

image

Priority

High (App breaking feature)

Dashboard Views

Describe the feature you would like to see

Add support for different dashboard "views" for lack of something better to call them.

As an example, when you setup an app, you are able to specify which view to show the app on (family, admin, all).

There are then different links to each view such as http://homarr.local/family and http://homarr.local/admin. Probably a different way to accomplish the ask, but trying to avoid doing it with authentication and authorization. That should be handled by the reverse proxy and/or application itself IMHO.

Priority

Medium (Would be very useful)

apiKey verification in the add services menu

Api key could be verified with the built-in form verification method. Sending a request to the URL with the apiKey and reading the status to validate the input.

  • Send a request to verify that the apikey is correct
  • Animate the TextInput to verify the apikey

Multilanguage

Description

Hey !
It could be nice to be able to choose your language in the configuration.
I'm sure many people would like to participate in the translation.

Priority

Medium (Would be very useful)

Weather Widget

Describe the feature you would like to see

Add a weather widget to homepage.

image

Priority

Low (Nice-to-have)

🧪 HELP NEEDED : I need help writing API tests

As a developer who's pretty new in terms of front-end development, I little to no experience testing my code (using Jest or other testing frameworks)

I need someone to teach me / show me how I could emulate an API request in order to test out future Modules (for #70 #13 #10) or other integrations. This would speed up development, so I can just focus on the UI with a mock request and then validate that the right request fills out the data like it's supposed to.
Any PR on tests would be greatly appreciated. ❤️

Portainer integration

Idea : Add a Portainer integration in the form of a table to list all your containers and a way to restart them do different actions
Requrires:

  • Login to the Portainer API with User / Pass, register the Bearer token correctly.
  • Use the bearer token in a component/module
  • Provide different actions to execute on the containers (Restart button, Update button ?, Update badges ?)

Automatic Docker image deployment

Add a GitHub action to automatically deploy a new Docker image to the Docker hub when a new Version tag is pushed to the master branch.
Another one could also be used to deploy at each commit on the dev branch (dev tag)

Module : Add update notification

Fetch the repo to get the latest release version and compare it with the actual release. Display a text in the settings menu if an update is available

Also : Wrap the settings icon to add an indicator if there is an update

Enhancement : Decouple the UI by using conditional rendering for each module

By refactor to make every single module distinct from the main UI. Provide an on/off switch in setting for each module.

  • Refactor Calendar to add it in /components/modules/calendar
  • Import the modules in the index.tsx file dependent on the user's settings
  • Add a way to register a new module, possibly on the fly ? (Switching on the switch would add the component to the tree of active modules?)
  • Add some sort of coherence between different modules. For example, a naming convention (CalendarCompoent -> CalendarModule)

[Later] SABnzbd Integration

Describe the feature you would like to see

Add support for SABnzbd showing current numbers for queue, history, and warnings.

Priority

Medium (Would be very useful)

Save Settings/Configuration

I created my setup to give it a go and thought I noticed a bug, so I opened the URL in another browser and noticed that I was on, what looked to be, a new instance with none of my settings saved.

I don't know if you want to create a single user setup that stores settings in a database of some variety, but I think people will want their settings to save across browsers.

I came to this when I toggled night mode and then refreshed the page and it didn't save my night mode setting.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.