Skip to content
This repository was archived by the owner on May 6, 2026. It is now read-only.

Skyleret/SchoologyTaskManager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

1 Commit
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Schoology-to-Obsidian Sync Tool (STM)

A lightweight, high-performance Swift CLI tool that syncs Schoology assignments to an Obsidian Markdown file. It bridges the gap between your LMS and your personal knowledge management system.

๐Ÿš€ Features

  • SSO Authentication: Bypasses Microsoft SSO using a headless Python helper (login_helper.py).
  • Course Scraping: Automatically fetches course titles (e.g., [Physics]) from Schoology links.
  • SQLite Persistence: Uses a local database to track processed tasks via unique URLs.
  • Smart Formatting: Appends tasks with (@YYYY-MM-DD) markers for Obsidian compatibility.
  • WAL Mode: Utilizes SQLite Write-Ahead Logging for database stability.

๐Ÿ›  Prerequisites

  1. Swift: macOS (comes with Xcode) or Linux.
  2. Python 3: Required for the SSO login helper.
  3. SQLite3: Pre-installed on macOS.

๐Ÿ“ฆ Installation & Setup

  1. Compile the binary:
    swiftc -O -whole-module-optimization main.swift -o stm
    

2. **Initialize Config:**
Run the tool once to generate the default config file:
```bash
./stm

Edit the generated file at ~/.STM_config.json with your credentials and Obsidian paths. 3. Move to Path (Optional):

mv stm /usr/local/bin/

๐Ÿ–ฅ Commands

  • sync: Full check + scrape missing subjects.
  • fastsync: Quick check (iCal only, no web scraping).
  • builddb: Populate the database without writing to Obsidian.
  • login: Force a session refresh via the Python helper.
  • hash: Debug utility to check for remote file changes.

โš™๏ธ Configuration

The file ~/.STM_config.json contains:

  • syncPeriodHours: Frequency of background syncs.
  • remoteUrl: Your Schoology iCal feed URL.
  • tasksPath: Absolute path to your Obsidian .md file.
  • dbPath: Path where the .db file will reside.

โš–๏ธ License

MIT License. This tool is not affiliated with Schoology or PowerSchool. Use at your own risk.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors