Skip to content

Life management system to organise & manage your life as an Obsidian vault.

License

Notifications You must be signed in to change notification settings

adoreblvnk/life_os

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Life OS

Life management system to organise & manage your life as an Obsidian vault.

Built With: ObsidianDataviewCustomJS


Table of Contents

About

Life OS is a note-taking, task-setting system that helps you to organise, track, & manage your life. Life OS dashboards provides a centralised way to view your progress across different areas of your life (daily activities, life stages (long-term plans), projects).

Created in Obsidian, packaged as a Obsidian vault template.

Demo

All demo files are stored in data/demo folder. To interact with the demo vault, use the script data/demo/demo.sh.

./data/demo/demo.sh

By default, the script moves demo files into the appropriate folders.

Options:

  • -u, --uninstall: Uninstall (moves demo files back to demo folder)

Getting Started

Prerequisites

Installation

  • Download latest release / Clone repository (for latest updates).
  • Obsidian > Open folder as vault > Trust author and enable plugins

Usage

Documentation

Homepage

Task Dashboard

The Task dashboard collates all uncompleted tasks in Life OS. Add tasks from any page.

Pages & Stats

Pages lists all dashboards in Life OS, which can also be accessed via the navbar. Quick Notes embeds the most recently modified note on the homepage as well.

Stats shows selected metadata from Dataview.

Quick Notes

Quick Notes Dashboard

Quick Notes dashboard lists all quick notes. All created notes show the embedded note & the page link. Generally, keep quick notes short as long note embeds will hinder accessibility & readability in the dashboard.

Journal

Journal Dashboard

The To Do section lists all uncompleted tasks sorted by recency.

To open Today's Journal, click "Today's Journal" on the Journal dashboard or "Daily notes: Open today's daily note" via Command palette. Past journals are stored from newest to oldest.

Journal Page

Each Journal page has an additional navbar link to yesterday & tomorrow. Next, daily tasks are stored here.

Tasks / Life Stages / Projects / Learning

Projects Dashboard

The To Do section lists all uncompleted tasks across all projects sorted by recency.

Next, projects are sorted according to their status. To modify a page status, edit the frontmatter yaml via "Properties view: Show file properties" via Command palette from the project page.

For Projects, a pseudo Kanban Board style is adopted, hence pages have 4 statuses:

  • Backlog: For projects not yet started
  • In Progress: For projects started
  • Done: For completed projects
  • Cancelled: For projects formerly "In Progress" but ultimately did not complete

NOTE: If you have come here from other page types, note that other page types may have different page statuses, hence this is a non-exhaustive list of page statuses, but the overall structure remains similar.

Project Page

Within the Description section, note that the timebox starting date is automatically filled up.

The Project Tasks section is a mini dashboard of all project tasks. Add tasks via the "Add Task" navlink, where "Add Task" is located at the bottom of the page.

Task statuses, what they mean, & how to add them:

  • Backlog: Normal task with text
  • In Progress: Tasks with a start date symbol (🛫). It's not necessary to add a start date.
  • Done: Tasks completed (Markdown - [x])
  • Cancelled: Tasks with hyphen symbol between task list square brackets (Markdown - [-])

Adding emojis is easiest done with Tasks' auto-suggest menu already included. Life OS only uses start date (🛫), high priority (⏫), & done (✅) (enabled by default when a task is completed).

NOTE: Do NOT confuse task status with project status.

Writings

Writings Dashboard

Writings Page

The Writings page is meant for long-form writings & highly unopinionated, hence only a navbar is included in the template.

life_os script for Linux & MacOS

NOTE: Currently in alpha stages. Run life_os -h for help.

Online sync to GitHub via Obsidian Git

Prior to this, users should've cloned / downloaded Life OS. Ensure that the .git folder exists.

  1. Create your personal GitHub repository.

Linux / macOS / Windows

  1. Follow the steps in Obsidian Git's Authentication.
  2. Link your GitHub repo via changing the remote repository's URL or via Obsidian's Command palette (see Android / iOS).

NOTE: For Linux installation via Flatpak, only SSH is supported. The other alternative is to authenticate with the PAT in the URL (eg. https://<PAT>@github.com/adoreblvnk/life_os), which is insecure.

Android / iOS

  1. Create a Personal Access Token (PAT) with minimal permissions of "Read access to metadata" & "Read and Write access to administration, code, commit statuses, and pull requests".
  2. In Obsidian settings, go to Community Plugins > Git > Authentication/Commit Author.
  3. Enter your username, PAT, author name, & author email.
    • NOTE: Enter your author name & author email as per your GitHub username & email.
    • TIP: Use GitHub's noreply email address for privacy.
  4. Open Obsidian's Command palette > Git: Edit remotes > origin. Enter the URL of the GitHub repo you created.

Pushing / Pulling (Syncing)

  1. To push local changes to remote, use Obsidian's Command palette > Git: Push.
  2. To pull new changes from remote, use Obsidian's Command palette > Git: Pull.
    • NOTE: Changes are auto pulled by default when Obsidian launches.

Bugs

  • Javascript not rendering occasionally.
    • TypeError: Cannot read properties of undefined (reading 'file')
      
    • Fix: Reload DataviewJS block / close & reopen page. This occurs when Dataview fails to execute a query in time. Not a byproduct of Life OS' code.

Roadmap

  • Clean up code in CustomUtils.
  • Implement dashboard banners for aesthetics.
  • Auto-update Life OS via script.
    • Fix merge strategies.

License

This project is licensed under the terms of the MIT license.

Credits

Acknowledgements

About

Life management system to organise & manage your life as an Obsidian vault.

Topics

Resources

License

Stars

Watchers

Forks