Skip to content
Projects

sanjacob/BlackboardSync has 80 GitHub stars and 22 forks. GitHot measured 0 stars in 24 hours. Last checked 2026-11-15 06:45 UTC. Last push 2026-11-13.

How these counts are measured

What you can do

  • Attachments of any* type (e.g. .docx, .pptx, .pdf, etc.)
  • Content descriptions (saved as html files)
  • Linux, Windows, and macOS ready

Measured star growth

in 24h
0
in 7 days
Collecting history
in 15 days
Collecting history
in 1 month
Collecting history

Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.

About

Download your Blackboard Learn content automatically

Learning

README.md

Original

BlackboardSync

Automatic Downloads Of Your Blackboard Content

Get on PyPI License: GPL  v2 Build Matrix

BlackboardSync performs a periodic, incremental download of all your Blackboard content, such as lecture slides, lab sheets, and other attachments.


Join the Matrix room to hear about updates, ask for help, and more!

About

Being a student in this day and age means constantly having to keep up to date with the files that are uploaded to the student portal. I needed a tool that would take care of retrieving these files for me, allowing me to focus on the work to be done. Something I could set up and forget about.

What I was looking for in such an application was:

  • Automatic syncing with minimal intervention after the initial setup
  • Graphical interface
  • Cross-platform compatibility
  • It would make use of the [Blackboard REST API][blackboard-api]

60+ Universities Supported Around the World

Why is my university/college not supported?

To provide support for a specific university, it is necessary to have some knowledge about its login process.

If you would like to help to add support for your university, or would like to see which universities are currently supported, start here.

Built with:

  • [Python 3.15][python]
  • [PyQt6][pyqt]

Features

  • Supported content:
    • Attachments of any* type (e.g. .docx, .pptx, .pdf, etc.)
    • Internet links
    • Content descriptions (saved as html files)
  • Cross-platform
    • Linux, Windows, and macOS ready

*: Except videos

Installation

Microsoft Store

Flathub

Download on Flathub

Windows (.exe) and MacOS (.dmg)

Please first download the latest release.

MacOS Installation

You will need to confirm the installation in System Preferences > Security and Privacy. You can see the specific steps in the GIF below. After the program has been installed, you may eject the mounted disk.

MacOSInstall

PyPI

python3 -m pip install blackboardsync
blackboardsync

From source

Requires [Python >=3.14,<3.16, pip][python], [pipenv][pipenv], [git][git]
git clone https://github.com/sanjacob/BlackboardSync.git
cd BlackboardSync
pipenv install
pipenv run python -m blackboard_sync

Previous Releases

You can find all releases on GitHub.

Contributions

Contributions are welcome.

More details available at CONTRIBUTING.md

We are looking for beta testers for all platforms!

Bugs, issues or feature requests?

Open a GitHub issue here.

Show Your Support

Ko-fi ☕

Support BBSync on ko-fi

LiberaPay

LiberaPay

Bitcoin ₿

bc1qhvcs07y3jnf09kahefscs05gxlmvhu542wzvgp

If you wish to contribute in a different way, please inquire.

License

License: GPL  v2

This software is distributed under the General Public License v2.0, more information available at the Free Software Foundation.

Acknowledgements

[Blackboard API documentation][blackboard-api]

[PyInstaller][pyinstaller]

README templates/guide by [tonycrosby-tech][tonycrosby], [neildrew][neildrew], and [Rita Łyczywek][bulldogjob]

Flathub team for their quick work in approving the app :heart:

[git]: https://git-scm.com/ "Git" [python]: https://www.python.org/ "Python.org" [pipenv]: https://pipenv.pypa.io/en/latest/ "Pipenv" [pyqt]: https://pypi.org/project/PyQt6/ "Python Bindings for Qt 6"

[blackboard-api]: https://developer.blackboard.com/portal/displayApi "Blackboard API Reference" [pyinstaller]: https://www.pyinstaller.org/ "PyInstaller"

[tonycrosby]: https://gist.github.com/tonycrosby-tech/c18c2b6c74900c6080fc097ca0718839 "tonycrosby-tech README template" [neildrew]: https://github.com/othneildrew/Best-README-Template "othneildrew README template" [bulldogjob]: https://bulldogjob.com/news/449-how-to-write-a-good-readme-for-your-github-project "bulldogjob README guide"