Automatically import Canvas assignments into a Notion database.

Latest Version

Version
5.0.4
Update
October 24, 2024
Size
224KiB
Developer
Category
Users
6,000+
Rating
5 ★
Manifest Version
3
Web Store Status
Languages Support
English (UK)
See more
Permissions
Storage
ActiveTab
Scripting
Identity
See more

Notion Canvas Assignment Import Extension

This extension parses the assignments from a Canvas LMS course assignments page and loads them into a Notion database, at just the click of a button—unlock your full time-management and productivity potential!

FEATURES

💄 Simple, user-friendly interface
📄 Provided Notion database template
🔧 Configurable options, with input validation
🗄️ 'Category' database property for seamless integration into an existing tasks database
🔍 No duplication of assignments already in the database
📝 Updating previously imported assignments with new Canvas changes
⚙️ Fine-tuning of database property names & values
✏️ Overriding of Canvas course names
😀 Emojis for Notion page icons
🧑‍💻 Open source
🔒 Private and secure—all data is stored locally. I do not log or save any user data.

SETUP INSTRUCTIONS

Refer to the repository on GitHub:
• Click on 'Website' →; or
• Click the 'GitHub Repository' button in the extension; or
• Copy and paste: https://github.com/JamesNZL/notion-assignment-import#readme

DISCORD SERVER

Join the Discord server! https://discord.gg/k2jjmmVPeK

PRIVACY POLICY

In a nutshell, I store only what data is absolutely necessary. This data is stored locally, and is never transmitted back to me.

Refer to the for my full privacy policy.
https://github.com/JamesNZL/notion-assignment-import/blob/main/PRIVACY.md

HOW IT WORKS

-- ASSIGNMENT PARSING

1. Assignments are fetched from the Canvas API.

2. Relevant information is extracted from each fetched assignment, and the following configurations applied:
2(a). Course Code Overrides, and
2(b). Page Emojis.

3. Fetched assignments are saved by course in browser local storage in a JSON-serialisable format.

-- NOTION IMPORT

4. The OAuth2 token is used to authorise with the Notion API.

5. The saved assignment data is retrieved from local storage.

6. The configured database is queried to avoid import of duplicate assignments (by matching assignment URLs).

7. The configured Database Properties are used to create a new database page for each assignment with the Notion API.

VERSION HISTORY

View the full changelog here:
https://github.com/JamesNZL/notion-assignment-import/blob/master/CHANGELOG.md

v5.0.4 — Proper fix for invalid database ID issue
v5.0.3 — Fixed invalid database ID issue
v5.0.2 — Proper fix for corrupted favicon image files
v5.0.1 — Fix corrupted favicon image files
v5.0.0 — Add updating already imported Notion pages with Canvas changes. Allow importing past assignments.

v4.3.3 — Updated valid emojis to match Notion
v4.3.2 — Fixed timezone and import reliability issues
v4.3.1 — Fixed homepage import bug
v4.3.0 — Added support for assignment descriptions, assignment points value, and renamed 'Available Date' to 'Unlock Date'
v4.2.5 — Fixed validation of database options, reset 'Authorise with Notion' button when restoring defaults
v4.2.4 — Fixed edge case where database select refresh button doesn't appear
v4.2.3 — Improvements to keyboard navigation and accessibility
v4.2.2 — Fixed unsaved changes confirmation dialogue, accessibility improvements
v4.2.1 — Fixed dropdown arrow display, and left margin of 'No saved courses...' in popup
v4.2.0 — Added light mode, unsaved changes indicator, and unsaved changes exit confirmation dialogue
v4.1.1 — Interface bug fixes and enhancements for wide screens
v4.1.0 — Tweaks to input validation and showing/hiding of dependent options, bug fixes for Safari
v4.0.1 — Under-the-bonnet bug fixes for Firefox WebExtension auto-validation.
v4.0.0 — Major interface re-design, complete overhaul of options page, bug fixes, usability enhancements

v3.0.6 — Behind-the-scenes changes, Firefox release
v3.0.2 — Fixed another minor UI bug
v3.0.1 — Fixed minor UI bug
v3.0.0 — Options input validation, UI enhancements (+ new logo!), bug fixes

v2.4.2 — Performance enhancements
v2.4.1 — UI bug fixes and enhancements
v2.4.0 — Graceful error handling, interface enhancements, bug fixes.
v2.3.0 — Interface enhancements and bug fixes.
v2.2.0 — User experience and performance improvements, start versioning with semver.
v2.1 — User interface overhaul.
v2.0 — Usability improvements and behind-the-scenes changes.

v1.0 — Initial release.
Read more

Source Manifest.json

{"update_url": "https://clients2.google.com/service/update2/crx",\t"name": "Notion Canvas Assignment Import",\t"description": "Automatically import Canvas assignments into a Notion database.",\t"version": "5.0.4",\t"manifest_version": 3,\t"key": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAhEFrWfD1/qqMVJQknBDk2PqlWLvnt8FrS4c56g2xAu+pK5w/TaScf5RXaGZ/aKFSt4ap10KN7YVEcMkb5aOwGcZWr7MmxfUFDM9pbPGUE6P7MaH4TtLnDhATaT1FfEt38P0v95fQHGj3/a2fwHjoz3zHx7fYoZ8hZPuNmwYASjE0ocCQgiZ8vq+zMykY4DNpt9Ea3aFddItOrMpHqjv6ZjfRc4gyWAdCCHg8sohMz7h3zvJvbQVhXPhU/HyQ2pCYqh7n9BwKFL5WiBxvhqZjC7AJdH+Zd2wDl3IIQNtY/cqgOYbuvFiI9k4+mWGew5r68rBDouhrYFYM8MGbKtHKkwIDAQAB",\t"options_ui": {\t\t"page": "options/options.html",\t\t"open_in_tab": true\t},\t"action": {\t\t"default_popup": "popup/popup.html",\t\t"default_icon": {\t\t\t"16": "favicon/favicon-16x16.png",\t\t\t"32": "favicon/favicon-32x32.png",\t\t\t"48": "favicon/favicon-48x48.png",\t\t\t"128": "favicon/favicon-128x128.png"\t\t}\t},\t"permissions": [\t\t"storage",\t\t"activeTab",\t\t"scripting",\t\t"identity"\t],\t"host_permissions": [\t\t"https://api.notion.com/*",\t\t"https://oauth.jamesnzl.xyz/api/notion/authorise",\t\t"https://oauth.jamesnzl.xyz/api/notion/access-token"\t],\t"icons": {\t\t"16": "favicon/favicon-16x16.png",\t\t"32": "favicon/favicon-32x32.png",\t\t"48": "favicon/favicon-48x48.png",\t\t"128": "favicon/favicon-128x128.png"\t}}
Read more