You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
162 lines
5.6 KiB
162 lines
5.6 KiB
<p align="center">
|
|
<picture>
|
|
<source media="(prefers-color-scheme: dark)" srcset="images/banner_light@2x.png">
|
|
<img src="images/banner_dark@2x.png" width="65%">
|
|
</picture>
|
|
</p>
|
|
|
|
<p align="center">
|
|
A modern <em>(fully static, fast)</em>, secure <em>(fully proxied)</em>, highly customizable application dashboard with integrations for more than 25 services and translations for over 15 languages. Easily configured via YAML files (or discovery via docker labels).
|
|
</p>
|
|
|
|
<p align="center">
|
|
<img src="images/1.png" />
|
|
</p>
|
|
|
|
<p align="center">
|
|
<img src="images/2.png" width="19%" />
|
|
<img src="images/3.png" width="19%" />
|
|
<img src="images/4.png" width="19%" />
|
|
<img src="images/5.png" width="19%" />
|
|
<img src="images/6.png" width="19%" />
|
|
</p>
|
|
|
|
<p align="center">
|
|
<a href="https://discord.gg/k4ruYNrudu"><img src="https://img.shields.io/badge/Discord - Chat-blue?logo=discord&logoColor=white" /></a>
|
|
<a href="https://paypal.me/phelpsben" title="Donate"><img src="https://img.shields.io/badge/PayPal - Donate-blue?logo=paypal&logoColor=white" alt="Linkedin - phelpsben"></a>
|
|
</p>
|
|
|
|
<p align="center">
|
|
<a href="https://github.com/benphelps/homepage/actions/workflows/docker-publish.yml"><img src="https://github.com/benphelps/homepage/actions/workflows/docker-publish.yml/badge.svg" alt="Docker"></a>
|
|
<a href="https://hosted.weblate.org/engage/homepage/"><img src="https://hosted.weblate.org/widgets/homepage/-/homepage/svg-badge.svg" alt="Weblate"></a>
|
|
</p>
|
|
|
|
## Features
|
|
|
|
- **Fast!** The entire site is statically generated at build time, so you can expect instant load times
|
|
- **Secure!** Every API request to backend services goes through a proxy server, so your API keys are never exposed to the frontend client.
|
|
- Images built for AMD64 (x86_64), ARM64, ARMv7 and ARMv6
|
|
- Supports all Raspberry Pi's, most SBCs & Apple Silicon
|
|
- Full i18n support with translations for Catalan, Chinese, Dutch, Finnish, French, German, Hebrew, Hungarian, Malay, Norwegian Bokmål, Polish, Portuguese, Portuguese (Brazil), Romanian, Russian, Spanish, Swedish and Yue
|
|
- Want to help translate? [Join the Weblate project](https://hosted.weblate.org/engage/homepage/)
|
|
- Service & Web Bookmarks
|
|
- Docker Integration
|
|
- Container status (Running / Stopped) & statistics (CPU, Memory, Network)
|
|
- Automatic service discovery (via labels)
|
|
- Service Integration
|
|
- Sonarr, Radarr, Readarr, Prowlarr, Bazarr, Lidarr, Emby, Jellyfin, Tautulli, Plex and more
|
|
- Ombi, Overseerr, Jellyseerr, Jackett, NZBGet, SABnzbd, ruTorrent, Transmission, qBittorrent and more
|
|
- Portainer, Traefik, Speedtest Tracker, PiHole, AdGuard Home, Nginx Proxy Manager, Gotify, Syncthing Relay Server, Authentik, Proxmox and more
|
|
- Information Providers
|
|
- Coin Market Cap, Mastodon and more
|
|
- Information & Utility Widgets
|
|
- System Stats (Disk, CPU, Memory)
|
|
- Weather via [OpenWeatherMap](https://openweathermap.org/) or [Open-Meteo](https://open-meteo.com/)
|
|
- Web Search Bar
|
|
- UniFi Console, Glances and more
|
|
- Instant "Quick-launch" search
|
|
- Customizable
|
|
- 21 theme colors with light and dark mode support
|
|
- Background image support
|
|
- Column and Row layout options
|
|
|
|
## Support & Suggestions
|
|
|
|
If you have any questions, suggestions, or general issues, please start a discussion on the [Discussions](https://github.com/benphelps/homepage/discussions) page.
|
|
|
|
For bug reports, please open an issue on the [Issues](https://github.com/benphelps/homepage/issues) page.
|
|
|
|
## Getting Started
|
|
|
|
For configuration options, examples and more, [please check out the homepage site](http://gethomepage.dev).
|
|
|
|
### With Docker
|
|
|
|
Using docker compose:
|
|
|
|
```yaml
|
|
version: "3.3"
|
|
services:
|
|
homepage:
|
|
image: ghcr.io/benphelps/homepage:latest
|
|
container_name: homepage
|
|
ports:
|
|
- 3000:3000
|
|
volumes:
|
|
- /path/to/config:/app/config # Make sure your local config directory exists
|
|
- /var/run/docker.sock:/var/run/docker.sock:ro # (optional) For docker integrations
|
|
```
|
|
|
|
or docker run:
|
|
|
|
```bash
|
|
docker run -p 3000:3000 -v /path/to/config:/app/config -v /var/run/docker.sock:/var/run/docker.sock ghcr.io/benphelps/homepage:latest
|
|
```
|
|
|
|
### With Node
|
|
|
|
First, clone the repository:
|
|
|
|
```bash
|
|
git clone https://github.com/benphelps/homepage.git
|
|
```
|
|
|
|
Then install dependencies and build the production bundle (I'm using pnpm here, you can use npm or yarn if you like):
|
|
|
|
```bash
|
|
pnpm install
|
|
pnpm build
|
|
```
|
|
|
|
If this is your first time starting, copy the `src/skeleton` directory to `config/` to populate initial example config files.
|
|
|
|
Finally, run the server:
|
|
|
|
```bash
|
|
pnpm start
|
|
```
|
|
|
|
## Configuration
|
|
|
|
Configuration files will be generated and placed on the first request.
|
|
|
|
Configuration is done in the /config directory using .yaml files. Refer to each config for
|
|
the specific configuration options.
|
|
|
|
You may also check [the homepage site](http://gethomepage.dev) for detailed configuration instructions, examples and more.
|
|
|
|
## Development
|
|
|
|
Install NPM packages, this project uses [pnpm](https://pnpm.io/) (and so should you!):
|
|
|
|
```bash
|
|
pnpm install
|
|
```
|
|
|
|
Start the development server:
|
|
|
|
```bash
|
|
pnpm dev
|
|
```
|
|
|
|
Open [http://localhost:3000](http://localhost:3000) to start.
|
|
|
|
This is a [Next.js](https://nextjs.org/) application, see their doucmentation for more information:
|
|
|
|
## Contributors
|
|
|
|
<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
|
|
<!-- prettier-ignore-start -->
|
|
<!-- markdownlint-disable -->
|
|
|
|
<!-- markdownlint-restore -->
|
|
<!-- prettier-ignore-end -->
|
|
|
|
<!-- ALL-CONTRIBUTORS-LIST:END -->
|
|
|
|
|
|
|
|
<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
|
|
[![All Contributors](https://img.shields.io/badge/all_contributors-13-orange.svg?style=flat-square)](#contributors)
|
|
<!-- ALL-CONTRIBUTORS-BADGE:END -->
|