Skip to content

About

Self-hosted personal dashboard: weather, money, school, sleep, habits, listening and work shifts on one page of widgets you arrange yourself. Modular, YAML-configured, one docker compose up.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

Atlas

A self-hosted personal dashboard you open every day. Atlas pulls the things you would otherwise check in six apps (weather, money, school, sleep, habits, listening, work shifts) into one page of widgets you arrange yourself, and keeps its own archive of whatever it can.

Read the Atlas Manual →

A short YAML file becomes a Homelab Services widget on the Today board, which is then dragged to the top-left and resized from M to L

Each subject is a module. The first time you open Atlas, Setup walks you through it in the browser: claim the install, say who it's for and where you are, then switch on modules and connect each one, with a Test button that tells you whether it works before you save. Weather and Habits need no account and start on.

Module Area Needs On by default Manual
open_meteo Weather nothing: your coordinates on Weather
habits Habits nothing on Habits
work Work nothing: you enter your weekly shifts off Work
securo Money a self-hosted Securo off Money
audiobookshelf Listening a self-hosted Audiobookshelf + API key off Listening
canvas School a Canvas calendar-feed URL off School
google_health Health a Google Cloud OAuth client (Fitbit / Pixel Watch) off Health

What you need

An always-on machine with Docker and the Compose plugin: a NAS, a Raspberry Pi 4 or 5, an old laptop or mini PC, or a VPS (about $5 a month is plenty). A laptop works, but Atlas only syncs while it is on. A hosted Atlas run for you is out of scope: it is your install, on your machine.

Quick start

curl -fsSL https://github.com/Fazorath/atlas-dashboard/releases/latest/download/install.sh | sh

That makes an atlas folder with the release docker-compose.yml, a .env with two generated secrets and config/, starts Atlas from the published images, and prints the address and the one-time setup code. Open http://127.0.0.1:8188, enter the code, pick the Owner passphrase, and follow Setup. Back up atlas/.env now: it holds the key that seals the passwords you enter in Setup. Versions and what changed are on the Releases page.

On a remote machine, reach it through an SSH tunnel (ssh -L 8188:127.0.0.1:8188 <user>@<host>) or Tailscale. Setup writes config/ for you, as plain YAML you can still edit by hand (changes apply within seconds, no restart).

Only settings are protected. Anyone who can open Atlas can read it and tick your habits. Its ports bind to 127.0.0.1; put a reverse proxy with auth, or a private network such as Tailscale, in front of it rather than publishing it to the open internet. To build from source instead, see Install.

Try it with demo data in 60 seconds

Finish Setup first (its Place step gives the weather its coordinates). Then, in atlas/config/atlas.yaml, add demo: true and make sure modules: lists the ones the demo fills (keep the other keys Setup wrote):

modules:
  - open_meteo
  - habits
  - work
  - canvas
  - google_health
demo: true
cd atlas
docker compose restart atlas-api
docker compose exec atlas-api python -m app.demo
curl -X POST 127.0.0.1:8187/api/sync/weather

Reload the page: a made-up student's week fills Today. Details, and how to leave demo mode, are on the demo data page.

Today with demo data on a phone

The manual

Its source is in docs/manual/; design decisions are in docs/adr/ and the vocabulary in CONTEXT.md.

Early testers

Atlas is being worked on in the open over the next few weeks, and early testers are welcome. Install it, try it with demo data or your own, and open an issue for anything that breaks or anything you wish it did.

Want to try it early? Open an issue for a bug or an idea; that's the whole process, and nothing personal is collected.

What's next

  • A catalog of community modules to browse and install.

About

Self-hosted personal dashboard: weather, money, school, sleep, habits, listening and work shifts on one page of widgets you arrange yourself. Modular, YAML-configured, one docker compose up.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages