Skip to content

Personalized and configurable dashboard powered by a templating engine with data injection having parallelism to speed up rendering 😅. With a Shared Cache to speed it up further⚡. All built in rust 🦀

License

Notifications You must be signed in to change notification settings

AMS003010/Singularity

Repository files navigation

Singularity


Singularity

Have all your stuff in one place, that's right 😌 all in your Singularity.

image

( PS: It's a customizable dashboard powered by a templating engine with data injection having parallelism to speed up rendering 😅. With a Shared Cache to speed it up further⚡. All built in rust 🦀)


Contents


Features

Widgets

  • Weather 🌤️
  • Clock ⏰
  • Calendar 🗓️
  • Header
  • Will be adding more in the near (distant) future

Cache

A shared cache is present which is enabled by default with a TTL (Time To Live) of 5 minutes. So all the widgets with cache support will be cached for a duration of 5 minutes after which it will be refetched.

theme: neo-noir
theme_background_color: "black"
widget_heading: "white"
footer: "yellow"
cache: 5m

The TTL can be changed by changing the cache attribute in singularity.yaml. Supported formats

  • 10m : Here TTL is set to 10 minutes
  • 2h : Here TTL is set to 2 hours
  • 0.5h : Here TTL is set to 30 minutes
  • 0.5m : Here TTL is set to 30 seconds

Note

Have a minimum TTL of 10 seconds. If it is < 10 seconds then it will use the system default of 5m.


Header Widget

It is a special monitoring widget which can be enabled with header-widget: true for each page. It is by default set to false and is positioned by default after the the navbar in each page. It can be set specifically for each page.

image

It shows the mounts available in the system along with the disk space available in GB for each drive. It also shows the system stats like

  • CPU Usage 🖥
  • No. of Cores 🧇
  • Wi-Fi status 🛜
  • OS 💽
  • Username 🖥️

Install

Windows 🪟

Prerequisites (Need to install manually)

  • rustc
  • Cargo
  • rustup

Run this command to build the executable and run it

git clone https://github.com/AMS003010/Singularity.git
cd Singularity
cargo r -r

Linux 🐧

This was tested on a Ubuntu 24.04 LTS

Run these commands. This script installs everything for you including the prerequisites. install-linux.sh will install the prerequisites, build the exectable and add it to path (cargo's path).

git clone https://github.com/AMS003010/Singularity.git
cd Singularity/scripts/
chmod +x install-linux.sh
mv install-linux.sh ../
cd ..
./install-linux.sh

Now open a new terminal under the root of the singularity directory and run the executable, type

singularity

Run it as container 📦

Prerequisites

  • docker
git clone https://github.com/AMS003010/Singularity.git
cd Singularity
docker compose up

Activity

Alt


Profiling

cargo install samply --locked
cargo build && samply record target/release/singularity

Caution

The project is under active development, expect things to break every once in a while 😑.

Note

Inspired from Glance

About

Personalized and configurable dashboard powered by a templating engine with data injection having parallelism to speed up rendering 😅. With a Shared Cache to speed it up further⚡. All built in rust 🦀

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •