├── .gitignore ├── IconTemplate.png ├── IconTemplate@2x.png ├── InstructureIcons-Line.css ├── LICENSE ├── about.html ├── app.js ├── index.html ├── package.json ├── readme.md └── screenshot.png /.gitignore: -------------------------------------------------------------------------------- 1 | 2 | # Created by https://www.gitignore.io/api/node,webstorm,macos,windows,linux 3 | # 4 | # ### Node ### 5 | # # Logs 6 | # logs 7 | # *.log 8 | # npm-debug.log* 9 | # 10 | # # Runtime data 11 | # pids 12 | # *.pid 13 | # *.seed 14 | # *.pid.lock 15 | # 16 | # # Directory for instrumented libs generated by jscoverage/JSCover 17 | # lib-cov 18 | # 19 | # # Coverage directory used by tools like istanbul 20 | # coverage 21 | # 22 | # # nyc test coverage 23 | # .nyc_output 24 | # 25 | # # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) 26 | # .grunt 27 | # 28 | # # node-waf configuration 29 | # .lock-wscript 30 | # 31 | # # Compiled binary addons (http://nodejs.org/api/addons.html) 32 | # build/Release 33 | # 34 | # # Dependency directories 35 | # node_modules 36 | # jspm_packages 37 | # 38 | # # Optional npm cache directory 39 | # .npm 40 | # 41 | # # Optional eslint cache 42 | # .eslintcache 43 | # 44 | # # Optional REPL history 45 | # .node_repl_history 46 | # 47 | # # Output of 'npm pack' 48 | # *.tgz 49 | # 50 | # # Yarn Integrity file 51 | # .yarn-integrity 52 | # 53 | # 54 | # 55 | # ### WebStorm ### 56 | # # Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and Webstorm 57 | # # Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 58 | # 59 | # # User-specific stuff: 60 | # .idea/workspace.xml 61 | # .idea/tasks.xml 62 | # 63 | # # Sensitive or high-churn files: 64 | # .idea/dataSources/ 65 | # .idea/dataSources.ids 66 | # .idea/dataSources.xml 67 | # .idea/dataSources.local.xml 68 | # .idea/sqlDataSources.xml 69 | # .idea/dynamic.xml 70 | # .idea/uiDesigner.xml 71 | # 72 | # # Gradle: 73 | # .idea/gradle.xml 74 | # .idea/libraries 75 | # 76 | # # Mongo Explorer plugin: 77 | # .idea/mongoSettings.xml 78 | # 79 | # ## File-based project format: 80 | # *.iws 81 | # 82 | # ## Plugin-specific files: 83 | # 84 | # # IntelliJ 85 | # /out/ 86 | # 87 | # # mpeltonen/sbt-idea plugin 88 | # .idea_modules/ 89 | # 90 | # # JIRA plugin 91 | # atlassian-ide-plugin.xml 92 | # 93 | # # Crashlytics plugin (for Android Studio and IntelliJ) 94 | # com_crashlytics_export_strings.xml 95 | # crashlytics.properties 96 | # crashlytics-build.properties 97 | # fabric.properties 98 | # 99 | # ### WebStorm Patch ### 100 | # # Comment Reason: https://github.com/joeblau/gitignore.io/issues/186#issuecomment-215987721 101 | # 102 | # # *.iml 103 | # # modules.xml 104 | # # .idea/misc.xml 105 | # # *.ipr 106 | # 107 | # 108 | # ### macOS ### 109 | # *.DS_Store 110 | # .AppleDouble 111 | # .LSOverride 112 | # 113 | # # Icon must end with two \r 114 | # Icon 115 | # # Thumbnails 116 | # ._* 117 | # # Files that might appear in the root of a volume 118 | # .DocumentRevisions-V100 119 | # .fseventsd 120 | # .Spotlight-V100 121 | # .TemporaryItems 122 | # .Trashes 123 | # .VolumeIcon.icns 124 | # .com.apple.timemachine.donotpresent 125 | # # Directories potentially created on remote AFP share 126 | # .AppleDB 127 | # .AppleDesktop 128 | # Network Trash Folder 129 | # Temporary Items 130 | # .apdisk 131 | # 132 | # 133 | # ### Windows ### 134 | # # Windows thumbnail cache files 135 | # Thumbs.db 136 | # ehthumbs.db 137 | # ehthumbs_vista.db 138 | # 139 | # # Folder config file 140 | # Desktop.ini 141 | # 142 | # # Recycle Bin used on file shares 143 | # $RECYCLE.BIN/ 144 | # 145 | # # Windows Installer files 146 | # *.cab 147 | # *.msi 148 | # *.msm 149 | # *.msp 150 | # 151 | # # Windows shortcuts 152 | # *.lnk 153 | # 154 | # 155 | # ### Linux ### 156 | # *~ 157 | # 158 | # # temporary files which can be created if a process still has a handle open of a deleted file 159 | # .fuse_hidden* 160 | # 161 | # # KDE directory preferences 162 | # .directory 163 | # 164 | # # Linux trash folder which might appear on any partition or disk 165 | # .Trash-* 166 | # 167 | # # .nfs files are created when an open file is removed but is still being accessed 168 | # .nfs* 169 | # 170 | # # End of https://www.gitignore.io/api/node,webstorm,macos,windows,linux 171 | # 172 | -------------------------------------------------------------------------------- /IconTemplate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbohinski/canvasbar/d6e1b6ec972d3eddb4160fffeeca5c0d940fe0e8/IconTemplate.png -------------------------------------------------------------------------------- /IconTemplate@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbohinski/canvasbar/d6e1b6ec972d3eddb4160fffeeca5c0d940fe0e8/IconTemplate@2x.png -------------------------------------------------------------------------------- /InstructureIcons-Line.css: -------------------------------------------------------------------------------- 1 | @font-face { 2 | font-family: "InstructureIcons-Line"; 3 | src: url('InstructureIcons-Line.eot'); 4 | src: url('InstructureIcons-Line.eot?#iefix') format('eot'), 5 | url('InstructureIcons-Line.woff') format('woff'), 6 | url('InstructureIcons-Line.ttf') format('truetype'), 7 | url('InstructureIcons-Line.svg#InstructureIcons-Line') format('svg'); 8 | font-weight: normal; 9 | font-style: normal; 10 | } 11 | 12 | .icon:before { 13 | display: inline-block; 14 | font-family: "InstructureIcons-Line"; 15 | font-style: normal; 16 | font-weight: normal; 17 | line-height: 1; 18 | 19 | /* Support for all WebKit browsers. */ 20 | -webkit-font-smoothing: antialiased; 21 | 22 | /* Support for Safari and Chrome. */ 23 | text-rendering: optimizeLegibility; 24 | 25 | /* Support for Firefox. */ 26 | -moz-osx-font-smoothing: grayscale; 27 | 28 | /* Support for IE. */ 29 | font-feature-settings: 'liga'; 30 | } 31 | 32 | .icon-lg { 33 | font-size: 1.3333333333333333em; 34 | line-height: 0.75em; 35 | vertical-align: -15%; 36 | } 37 | .icon-2x { font-size: 2em; } 38 | .icon-3x { font-size: 3em; } 39 | .icon-4x { font-size: 4em; } 40 | .icon-5x { font-size: 5em; } 41 | .icon-fw { 42 | width: 1.2857142857142858em; 43 | text-align: center; 44 | } 45 | 46 | .icon-add:before { content: "\EA01" } 47 | .icon-address-book:before { content: "\EA02" } 48 | .icon-alert:before { content: "\EA03" } 49 | .icon-analytics:before { content: "\EA04" } 50 | .icon-android:before { content: "\EA05" } 51 | .icon-announcement:before { content: "\EA06" } 52 | .icon-apple:before { content: "\EA07" } 53 | .icon-arrow-down:before { content: "\EA08" } 54 | .icon-arrow-left:before { content: "\EA09" } 55 | .icon-arrow-open-down:before { content: "\EA0A" } 56 | .icon-arrow-open-left:before { content: "\EA0B" } 57 | .icon-arrow-open-right:before { content: "\EA0C" } 58 | .icon-arrow-open-up:before { content: "\EA0D" } 59 | .icon-arrow-right:before { content: "\EA0E" } 60 | .icon-arrow-up:before { content: "\EA0F" } 61 | .icon-assignment:before { content: "\EA10" } 62 | .icon-audio:before { content: "\EA11" } 63 | .icon-bookmark:before { content: "\EA12" } 64 | .icon-box:before { content: "\EA13" } 65 | .icon-calendar-add:before { content: "\EA14" } 66 | .icon-calendar-day:before { content: "\EA15" } 67 | .icon-calendar-days:before { content: "\EA16" } 68 | .icon-calendar-month:before { content: "\EA17" } 69 | .icon-calendar-reserved:before { content: "\EA18" } 70 | .icon-chat:before { content: "\EA19" } 71 | .icon-check-dark:before { content: "\EA1A" } 72 | .icon-check-mark:before { content: "\EA1B" } 73 | .icon-check-plus:before { content: "\EA1C" } 74 | .icon-check:before { content: "\EA1D" } 75 | .icon-clock:before { content: "\EA1E" } 76 | .icon-cloud-lock:before { content: "\EA1F" } 77 | .icon-collapse:before { content: "\EA20" } 78 | .icon-collection-save:before { content: "\EA21" } 79 | .icon-collection:before { content: "\EA22" } 80 | .icon-commons:before { content: "\EA23" } 81 | .icon-complete:before { content: "\EA24" } 82 | .icon-compose:before { content: "\EA25" } 83 | .icon-copy-course:before { content: "\EA26" } 84 | .icon-copy:before { content: "\EA27" } 85 | .icon-courses:before { content: "\EA28" } 86 | .icon-discussion-check:before { content: "\EA29" } 87 | .icon-discussion-new:before { content: "\EA2A" } 88 | .icon-discussion-reply-2:before { content: "\EA2B" } 89 | .icon-discussion-reply-dark:before { content: "\EA2C" } 90 | .icon-discussion-reply:before { content: "\EA2D" } 91 | .icon-discussion-search:before { content: "\EA2E" } 92 | .icon-discussion-x:before { content: "\EA2F" } 93 | .icon-discussion:before { content: "\EA30" } 94 | .icon-document:before { content: "\EA31" } 95 | .icon-download:before { content: "\EA32" } 96 | .icon-drag-handle:before { content: "\EA33" } 97 | .icon-drop-down:before { content: "\EA34" } 98 | .icon-edit:before { content: "\EA35" } 99 | .icon-educators:before { content: "\EA36" } 100 | .icon-email:before { content: "\EA37" } 101 | .icon-empty:before { content: "\EA38" } 102 | .icon-end:before { content: "\EA39" } 103 | .icon-equation:before { content: "\EA3A" } 104 | .icon-equella:before { content: "\EA3B" } 105 | .icon-expand-items:before { content: "\EA3C" } 106 | .icon-expand:before { content: "\EA3D" } 107 | .icon-export-content:before { content: "\EA3E" } 108 | .icon-export:before { content: "\EA3F" } 109 | .icon-eye:before { content: "\EA40" } 110 | .icon-facebook-boxed:before { content: "\EA41" } 111 | .icon-facebook:before { content: "\EA42" } 112 | .icon-files-copyright:before { content: "\EA43" } 113 | .icon-files-creative-commons:before { content: "\EA44" } 114 | .icon-files-fair-use:before { content: "\EA45" } 115 | .icon-files-obtained-permission:before { content: "\EA46" } 116 | .icon-files-public-domain:before { content: "\EA47" } 117 | .icon-filmstrip:before { content: "\EA48" } 118 | .icon-flag:before { content: "\EA49" } 119 | .icon-folder-locked:before { content: "\EA4A" } 120 | .icon-folder:before { content: "\EA4B" } 121 | .icon-forward:before { content: "\EA4C" } 122 | .icon-github:before { content: "\EA4D" } 123 | .icon-gradebook-export:before { content: "\EA4E" } 124 | .icon-gradebook-import:before { content: "\EA4F" } 125 | .icon-gradebook:before { content: "\EA50" } 126 | .icon-group-dark-new:before { content: "\EA51" } 127 | .icon-group-new:before { content: "\EA52" } 128 | .icon-group:before { content: "\EA53" } 129 | .icon-hamburger:before { content: "\EA54" } 130 | .icon-heart:before { content: "\EA55" } 131 | .icon-highlighter:before { content: "\EA56" } 132 | .icon-home:before { content: "\EA57" } 133 | .icon-hour-glass:before { content: "\EA58" } 134 | .icon-image:before { content: "\EA59" } 135 | .icon-import-content:before { content: "\EA5A" } 136 | .icon-import:before { content: "\EA5B" } 137 | .icon-indent-2:before { content: "\EA5C" } 138 | .icon-indent:before { content: "\EA5D" } 139 | .icon-info:before { content: "\EA5E" } 140 | .icon-instructure:before { content: "\EA5F" } 141 | .icon-integrations:before { content: "\EA60" } 142 | .icon-invitation:before { content: "\EA61" } 143 | .icon-keyboard-shortcuts:before { content: "\EA62" } 144 | .icon-like:before { content: "\EA63" } 145 | .icon-link:before { content: "\EA64" } 146 | .icon-linkedin:before { content: "\EA65" } 147 | .icon-lock:before { content: "\EA66" } 148 | .icon-lti:before { content: "\EA67" } 149 | .icon-mark-as-read:before { content: "\EA68" } 150 | .icon-marker:before { content: "\EA69" } 151 | .icon-masquerade:before { content: "\EA6A" } 152 | .icon-mastery-path:before { content: "\EA6B" } 153 | .icon-materials-required-light:before { content: "\EA6C" } 154 | .icon-materials-required:before { content: "\EA6D" } 155 | .icon-mature-light:before { content: "\EA6E" } 156 | .icon-mature:before { content: "\EA6F" } 157 | .icon-media:before { content: "\EA70" } 158 | .icon-message:before { content: "\EA71" } 159 | .icon-mini-arrow-down:before { content: "\EA72" } 160 | .icon-mini-arrow-left:before { content: "\EA73" } 161 | .icon-mini-arrow-right:before { content: "\EA74" } 162 | .icon-mini-arrow-up:before { content: "\EA75" } 163 | .icon-minimize:before { content: "\EA76" } 164 | .icon-module:before { content: "\EA77" } 165 | .icon-more:before { content: "\EA78" } 166 | .icon-move-down-bottom:before { content: "\EA79" } 167 | .icon-move-down:before { content: "\EA7A" } 168 | .icon-move-up-top:before { content: "\EA7B" } 169 | .icon-move-up:before { content: "\EA7C" } 170 | .icon-ms-excel:before { content: "\EA7D" } 171 | .icon-ms-ppt:before { content: "\EA7E" } 172 | .icon-ms-word:before { content: "\EA7F" } 173 | .icon-muted:before { content: "\EA80" } 174 | .icon-next-unread:before { content: "\EA81" } 175 | .icon-not-graded:before { content: "\EA82" } 176 | .icon-note-dark:before { content: "\EA83" } 177 | .icon-note-light:before { content: "\EA84" } 178 | .icon-off:before { content: "\EA85" } 179 | .icon-outcomes:before { content: "\EA86" } 180 | .icon-outdent:before { content: "\EA87" } 181 | .icon-outdent2:before { content: "\EA88" } 182 | .icon-paint:before { content: "\EA89" } 183 | .icon-paperclip:before { content: "\EA8A" } 184 | .icon-partial:before { content: "\EA8B" } 185 | .icon-pdf:before { content: "\EA8C" } 186 | .icon-peer-graded:before { content: "\EA8D" } 187 | .icon-peer-review:before { content: "\EA8E" } 188 | .icon-pin:before { content: "\EA8F" } 189 | .icon-pinterest:before { content: "\EA90" } 190 | .icon-plus:before { content: "\EA91" } 191 | .icon-post-to-sis:before { content: "\EA92" } 192 | .icon-prerequisite:before { content: "\EA93" } 193 | .icon-printer:before { content: "\EA94" } 194 | .icon-publish:before { content: "\EA95" } 195 | .icon-question:before { content: "\EA96" } 196 | .icon-quiz-stats-avg:before { content: "\EA97" } 197 | .icon-quiz-stats-deviation:before { content: "\EA98" } 198 | .icon-quiz-stats-high:before { content: "\EA99" } 199 | .icon-quiz-stats-low:before { content: "\EA9A" } 200 | .icon-quiz-stats-time:before { content: "\EA9B" } 201 | .icon-quiz:before { content: "\EA9C" } 202 | .icon-refresh:before { content: "\EA9D" } 203 | .icon-remove-bookmark:before { content: "\EA9E" } 204 | .icon-remove-from-collection:before { content: "\EA9F" } 205 | .icon-replied:before { content: "\EAA0" } 206 | .icon-reply-2:before { content: "\EAA1" } 207 | .icon-reply-all-2:before { content: "\EAA2" } 208 | .icon-reply:before { content: "\EAA3" } 209 | .icon-reset:before { content: "\EAA4" } 210 | .icon-rss-add:before { content: "\EAA5" } 211 | .icon-rss:before { content: "\EAA6" } 212 | .icon-rubric-dark:before { content: "\EAA7" } 213 | .icon-rubric:before { content: "\EAA8" } 214 | .icon-search-address-book:before { content: "\EAA9" } 215 | .icon-search:before { content: "\EAAA" } 216 | .icon-settings-2:before { content: "\EAAB" } 217 | .icon-settings:before { content: "\EAAC" } 218 | .icon-sis-imported:before { content: "\EAAD" } 219 | .icon-sis-not-synced:before { content: "\EAAE" } 220 | .icon-sis-synced:before { content: "\EAAF" } 221 | .icon-skype:before { content: "\EAB0" } 222 | .icon-speed-grader:before { content: "\EAB1" } 223 | .icon-standards:before { content: "\EAB2" } 224 | .icon-star-light:before { content: "\EAB3" } 225 | .icon-star:before { content: "\EAB4" } 226 | .icon-stats:before { content: "\EAB5" } 227 | .icon-strikethrough:before { content: "\EAB6" } 228 | .icon-student-view:before { content: "\EAB7" } 229 | .icon-syllabus:before { content: "\EAB8" } 230 | .icon-table:before { content: "\EAB9" } 231 | .icon-tag:before { content: "\EABA" } 232 | .icon-target:before { content: "\EABB" } 233 | .icon-text-centered:before { content: "\EABC" } 234 | .icon-text-left:before { content: "\EABD" } 235 | .icon-text-right:before { content: "\EABE" } 236 | .icon-text:before { content: "\EABF" } 237 | .icon-textarea:before { content: "\EAC0" } 238 | .icon-timer:before { content: "\EAC1" } 239 | .icon-toggle-left:before { content: "\EAC2" } 240 | .icon-toggle-right:before { content: "\EAC3" } 241 | .icon-trash:before { content: "\EAC4" } 242 | .icon-trouble:before { content: "\EAC5" } 243 | .icon-twitter-boxed:before { content: "\EAC6" } 244 | .icon-twitter:before { content: "\EAC7" } 245 | .icon-unlock:before { content: "\EAC8" } 246 | .icon-unmuted:before { content: "\EAC9" } 247 | .icon-unpublish:before { content: "\EACA" } 248 | .icon-unpublished:before { content: "\EACB" } 249 | .icon-updown:before { content: "\EACC" } 250 | .icon-upload:before { content: "\EACD" } 251 | .icon-user-add:before { content: "\EACE" } 252 | .icon-user:before { content: "\EACF" } 253 | .icon-video:before { content: "\EAD0" } 254 | .icon-warning:before { content: "\EAD1" } 255 | .icon-windows:before { content: "\EAD2" } 256 | .icon-wordpress:before { content: "\EAD3" } 257 | .icon-x:before { content: "\EAD4" } 258 | .icon-zipped:before { content: "\EAD5" } 259 | .icon-zoom-in:before { content: "\EAD6" } 260 | .icon-zoom-out:before { content: "\EAD7" } 261 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017 Tianyi Ma 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /about.html: -------------------------------------------------------------------------------- 1 | 2 |
3 |We need to know how your school talks to Canvas.
36 |We also need your permission to talk to Canvas.
37 |On the next page please check 'Stay signed in'!
38 |After you see your grades start to load
please close and reopen this window.
TCNJ's is provided as an example...
42 | 47 |