Thanks to visit codestin.com
Credit goes to github.com

Skip to content

juls0730/passport

Repository files navigation

Passport

Passport is a simple, fast, and lightweight web dashboard/new tab replacement.

"I cant believe I've never broken it" - me

Getting Started

Screenshot of Passport

Prerequisites

Usage

Docker

Passport is available as a Docker image via this repository for both amd64 and arm64. This is the recommended way to run Passport.

docker run -d --name passport -p 3000:3000 -v passport_data:/data -e PASSPORT_ADMIN_USERNAME=admin -e PASSPORT_ADMIN_PASSWORD=password ghcr.io/juls0730/passport:latest

Make sure to change the admin password to something secure. At /data is where all of passport's persistent data will be stored, such as image uploads and the sqlite database.

Building from source

If you want to build from source, you will need to install the dependencies first.

# note entirely necessary, but strongly recommended
go install github.com/juls0730/zqdgr@latest

# install bun
curl -fsSL https://bun.sh/install | bash

# install css build deps
bun install

# you may also have to install sqlite3...

Then you can build the binary.

zqdgr build

You can then run the binary.

Configuration

Passport configuration

Environment Variable Description Required Default
PASSPORT_DEV_MODE Enables dev mode false false
PASSPORT_ENABLE_PREFORK Enables preforking false false
PASSPORT_ADMIN_USERNAME The username for the admin dashboard true
PASSPORT_ADMIN_PASSWORD The password for the admin dashboard true
PASSPORT_SEARCH_PROVIDER The search provider to use for the search bar, without any query parameters true
PASSPORT_SEARCH_PROVIDER_QUERY_PARAM The query parameter to use for the search provider, e.g. q for most providers false q

Note

Currently passport only supports search using a GET request.

Weather configuration

The weather integration is optional, and will be enabled automatically if you provide an API key. The following only applies if you are using the OpenWeatherMap integration.

Environment Variable Description Required Default
WEATHER_PROVIDER The weather provider to use, currently only openweathermap is supported false openweathermap
WEATHER_API_KEY The OpenWeather API key true
WEATHER_TEMP_UNITS The temperature units to use, either metric or imperial false metric
WEATHER_LAT The latitude of your location true
WEATHER_LON The longitude of your location true
WEATHER_UPDATE_INTERVAL The interval in minutes to update the weather data false 15

Uptime configuration

The uptime integration is optional, and will be enabled automatically if you provide an API key. The following only applies if you are using the UptimeRobot integration.

Environment Variable Description Required Default
UPTIME_API_KEY The UptimeRobot API key true
UPTIME_UPDATE_INTERVAL The interval in seconds to update the uptime data false 300

Adding links and categories

The admin dashboard can be accessed at /admin, you will be redirected to the login page if you are not logged in, use the credentials you configured via the environment variables to login. Once logged in you can add links and categories.

License

This project is licensed under the BSL-1.0 License - see the LICENSE file for details