A highly customizable homepage (or startpage / application dashboard) with Docker and service API integrations.
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.
 
 
 
 
Go to file
Ben Phelps 8cbead1703
allow pihole requests to be proxied
2 years ago
.github use self-hosted runner 2 years ago
images add preview image 2 years ago
public update favicon 2 years ago
src allow pihole requests to be proxied 2 years ago
.dockerignore first public source commit 2 years ago
.editorconfig first public source commit 2 years ago
.eslintrc.json Initial commit from Create Next App 2 years ago
.gitignore first public source commit 2 years ago
Dockerfile fix virtual package removal 2 years ago
LICENSE Initial commit 2 years ago
README.md update readme with supported integrations 2 years ago
jsconfig.json first public source commit 2 years ago
next.config.js disable SWC minify 2 years ago
package.json add ruTorrent widget 2 years ago
pnpm-lock.yaml add ruTorrent widget 2 years ago
postcss.config.js first public source commit 2 years ago
tailwind.config.js add theme switcher 2 years ago

README.md

Homepage Preview

Features

  • Web Bookmarks
  • Service Bookmarks
    • Docker Integration
      • Status light + CPU, Memory & Network Reporting
    • Service Integration
      • Currently supports Sonarr, Radarr, Ombi, Emby, NZBGet, ruTorrent, Portainer & PiHole
  • Homepage Widgets
    • System Stats (Disk, CPU, Memory)
    • Weather (via weatherapi.com)
  • Customizable
    • 21 theme colors with light and dark mode support

Getting Started

You can run the homepage from a docker container or locally using node.

With Docker

Using docker compose:

version: '3.3'
services:
    homepage:
        image: ghcr.io/benphelps/homepage:main
        container_name: homepage
        ports:
            - 3000:3000
        volumes:
            - /path/to/config:/app/config

or docker run:

docker run -p 3000:3000 -v /path/to/config:/app/config ghcr.io/benphelps/homepage:main

With Node

First, clone the repository:

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):

pnpm install
pnpm build

Finally, run the server:

pnpm start

Configuration

Configuration files will be genereted 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.

Development

Install NPM packages, this project uses pnpm (and so should you!):

pnpm install

Start the development server:

pnpm dev

Open http://localhost:3000 to start.

This is a Next.js application, see their doucmentation for more information: