Lightweight, web-based, multiplexed frontend for online educational platforms.
Tired of using bloated, buggy, or unintuitive educational platforms? Forced to use them for school or university? Want to throw all of them away and find an alternative approach that truly respects both your privacy and your time?
TaskCollect is a lightweight, web-based frontend that allows you to use existing platforms in a way that best suits your needs. Our goal is for you to stop wasting time managing platforms and to manage your learning instead. To this end, we have designed TaskCollect to be:
- lightweight, accessible, and fast
- multiplexed (all your platforms appear as one)
- easy-to-use, efficient, and productive (based on continuous user feedback)
- free, libre, and open-source
- easy to fix, maintain, and improve
Our team is currently working on TaskCollect v2 which will completely bring the above goals to fruition!
TaskCollect currently supports the following educational institutions:
- Glenunga International High School
Is your institution not in the list above? Contribute today to make it happen!
Build dependencies^:
- Git
- Make
- Go 1.20+
- Dart Sass 1.57+
^ Windows users should install a Unix shell for Make to function properly.
Clone this Git repository and build TaskCollect from source:
git clone https://git.sr.ht/~kvo/taskcollect
cd taskcollect/
make
To cross-compile for a specific platform (for a list of supported platforms, run go tool dist list
):
GOOS=linux GOARCH=amd64 make
To build release versions for all supported platforms, use the following:
make all
For personal or development purposes, use the following command:
make run
When deploying in production, use this instead:
make deploy
The TaskCollect server should now start on TCP port 443 (if deploying) or on port 8080 (for personal use).
TaskCollect development occurs on SourceHut. Mirrors may exist elsewhere (e.g. the official mirrors on Codeberg and GitHub), but contributions will only be accepted through SourceHut.
Confirmed issues and feature requests may be reported on the issue tracker. If your issue has not been confirmed, please send an email to taskcollect-discuss to discuss your query first.
Contributions are welcome! You can send us a pull request, or if you are unsure where to start, send an email to taskcollect-devel and we can help you get started. If your email reveals information about any educational institution, we advise you to send an email to taskcollect-discuss.
All contributors are required to "sign-off" their commits (using git commit -s
) to indicate that they have agreed to the Developer Certificate of Origin.
Please send patches to ~kvo/[email protected]. A detailed contribution guide is available in CONTRIBUTING.md
.
TaskCollect currently has a lot of moldy spots that need to be fixed:
- Bad UX due to bad UI (see the issue tracker)
- It does too many tasks at once (scraping, muxing, UI, auth, etc.)
- It's a web server (GUI app would be nicer)
- The codebase is ugly (refactor required)
- The official website is on Codeberg (slow) and badly designed
We will be releasing a proposal for TaskCollect v2 which will address these moldy spots. Keep an eye out for the official announcement.
To keep up with official TaskCollect announcements, subscribe to the announcements mailing list by sending an email to this email address: ~kvo/[email protected]
For all previous announcements, see the archives.
If you have a query, please send an email to the official mailing list: ~kvo/[email protected]
The list archives are hidden to protect the privacy of educational institutions.