Skip to content

Instantly share code, notes, and snippets.

@Garv767
Created July 16, 2025 14:23
Show Gist options
  • Select an option

  • Save Garv767/f5b20ea1172d7970d2bf16c37201d03b to your computer and use it in GitHub Desktop.

Select an option

Save Garv767/f5b20ea1172d7970d2bf16c37201d03b to your computer and use it in GitHub Desktop.

Permission Justifications for My Extension My extension needs certain permissions to function correctly and provide you with the enhancements you expect. Here's why I request each one:

activeTab: I use this permission to temporarily access the currently active browser tab when you directly invoke my extension (for example, by clicking its icon in your browser's toolbar). This allows me to perform actions like adding a download button to your timetable, but only when you've explicitly requested it, respecting your privacy by not having constant access to all your Browse activities.

scripting: This permission is essential because it allows me to inject and execute my JavaScript code and CSS styles into the specific web pages of the SRM Academia portal. I need this to:

Read and modify the page content (e.g., to replace slot codes with course titles, extract attendance data).

Apply custom styling (my styles.css) to enhance the visual appearance of tables and panels.

Perform calculations and add new elements (like the custom panels for attendance and marks, and the download timetable button).

storage: I use the storage permission to save certain pieces of your academic data locally on your device. This includes your course information, batch number, and attendance records. I store this data to:

Improve Performance: I don't have to re-fetch this information every time you open a relevant page.

Enhance User Experience: It allows features to function persistently, making your experience smoother.

Share Data Across Pages: Data fetched on one page (like your course registration page) can then be used on another (like your timetable or attendance page) without requiring you to manually navigate back.

host_permissions (https://academia.srmist.edu.in/*): This permission grants my extension the necessary access to interact specifically with pages on the https://academia.srmist.edu.in/ domain. All my core functionalities, such as data extraction, DOM manipulation, and feature additions, are designed to work on this particular website. Without this, my extension would not be able to function as intended on the SRM portal.

web_accessible_resources (images/* matched to <all_urls>): I declare my images folder as web-accessible resources. This is specifically so that I can display my extension's internal images (like the download icon I use for buttons) directly on the web page. While I use <all_urls> for flexibility, these images are primarily used within the SRM portal context.

Privacy Policy for SRM Timetable Enhancer This privacy policy explains how the SRM Timetable Enhancer handles your data.

My Commitment to Your Privacy:

I am committed to protecting your privacy. This extension is designed purely to enhance your personal experience on the SRM Academia portal.

Data Collection and Storage:

I DO NOT Collect or Transmit Your Personal Data: My extension does NOT collect, store, or transmit any of your personal information, academic data (such as your course details, attendance records, or marks), or Browse history to any external servers, third parties, or myself (the extension developer).

All Data Stays Local: Any data processed by this extension (like your course names, batch number, and attendance percentages) is stored exclusively on your own device using your browser's chrome.storage.local API. This data never leaves your browser and is not accessible to anyone else.

Purpose of Local Data: The data I store locally is used solely for the functionality of this extension. For example, I store your course codes and titles to display them on your timetable, and I store attendance data to provide you with margin calculations. This local storage allows the extension's features to function efficiently and persist across your Browse sessions without needing to re-fetch information repeatedly.

Permissions Used and Their Purpose:

The permissions I request (as detailed above in the "Permission Justifications" section) are strictly necessary for the extension to perform its stated functions without compromising your privacy. They allow me to interact with the SRM Academia portal and store relevant data locally on your device for your benefit only.

Changes to This Policy:

I may update this privacy policy from time to time. Any changes will be posted here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment