Skip to content

svaningelgem/smartschool

Repository files navigation

Smartschool Parser

codecov

Unofficial Python library providing programmatic access to Smartschool's web platform. Access courses, documents, messages, results, agenda, and more through a clean, type-safe API.

Quick Start

Install from PyPI:

pip install smartschool

Create credentials.yml with your Smartschool credentials:

username: your_username
password: your_password
main_url: your_school.smartschool.be
mfa: your_birthday_or_2fa_secret  # YYYY-mm-dd or Google Authenticator secret
from smartschool import Smartschool, PathCredentials, Courses

session = Smartschool(PathCredentials())
for course in Courses(session):
    print(course.name)

Features

Category Classes Description
Courses TopNavCourses, Courses, CourseList Browse courses and download documents
Intradesk Intradesk Browse and download files from the intradesk
Results Results, Reports, Periods Grades, evaluations, report cards
Messages MessageHeaders, Message, Attachments Inbox/outbox, attachments, labels
Schedule SmartschoolLessons, SmartschoolHours Daily schedules, class periods
Planner PlannedElements, FutureTasks Assignments, deadlines, activities
Support StudentSupportLinks School support resources

Documentation

Detailed usage guides with examples:

Development

git clone https://github.com/svaningelgem/smartschool.git
cd smartschool
pip install poetry
poetry install

# Run tests
poetry run pytest

# Linting & formatting
poetry run ruff check .
poetry run ruff format .

Requirements

  • Python: 3.10+
  • Core Dependencies: requests, beautifulsoup4, pydantic, pyyaml, logprise
  • Optional: pip install smartschool[mfa] for Google Authenticator 2FA support

License

GNU General Public License v3.0

Contributing

Contributions welcome! Please ensure:

  • Tests pass: poetry run pytest
  • Code is formatted: poetry run ruff format .
  • Linting passes: poetry run ruff check .
  • Type stubs are updated: ./restub

Support

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors