Git Product home page Git Product logo

betterseqta-plus's Introduction

A beautiful ๐Ÿคฉ Chrome Extension that adds additional features and gives an overall better experience for SEQTA Learn. Currently looking for contributors ๐Ÿ”ฅ

ChromeDownload

Table of contents

Release Videos

render-minfied.mp4

Features

  • Dark mode
    • Custom Background
  • Improved Styling/CSS
    • Improved look for SEQTA Learn
  • Custom Home Page including:
    • Daily Lessons
    • Shortcuts
    • Easier Access Notices
  • Options to remove certain items from the side menu
  • Notification for next lesson (sent 5 minutes before end of the lesson)
  • Browser Support
    • Chrome Supported
    • Edge Supported
    • Brave Supported
    • Opera Supported
    • Vivaldi Supported
    • Firefox (Experimental - available here)
    • Safari (Experimental - only available via compilation)

Getting started

  1. Clone the repository
git clone https://github.com/SethBurkart123/EvenBetterSEQTA

Running Development

  1. Install dependencies
npm install # or your preferred package manager like pnpm or yarn
  1. Run the dev script (it updates as you save files)
npm run dev
  1. Load the extension into chrome
  • Go to chrome://extensions
  • Enable developer mode
  • Click Load unpacked
  • Select the dist folder

Just remember, in order to update changes to the extension, you need to click the refresh button on the extension in chrome://extensions whenever anything's changed.

Building for production

  1. Install dependencies
npm install # or your preferred package manager like pnpm or yarn
  1. Run the build script
npm run build
  1. Package it up (optional)
npm run package # this requires 7zip to be installed in order to work

Folder Structure

The folder structure is as follows:

  • The src folder contains source files that are compiled to the build directory.

  • The src/interface folder contains source React files that are required for the Settings page.

  • The dist folder is where the compiled code ends up, this is the folder what you need to load into chrome as an unpacked extension for development.

  • The safari folder is an Xcode project, building it for MacOS does work, IOS needs a few modifications to the manifest to work, but I have managed to get it working. It will give an error, to fix this you need to regenerate it, you can delete the safari folder and then run the command xcrun safari-web-extension-converter <extension-folder>/dist and it will automatically generate the xcode project where you are.

Contributors

Credits

This extension was initially developed by Nulkem, was ported to manifest V3 by MEGA-Dawg68 and is currently under active development by SethBurkart123 and Crazypersonalph

Star History

Star History Chart

betterseqta-plus's People

Contributors

97-42 avatar cayden-burkart avatar code-factor avatar crazypersonalph avatar mega-dawg68 avatar sethburkart avatar sethburkart123 avatar sweep-ai[bot] avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

betterseqta-plus's Issues

CSS Colour issues

On Notices, Courses, Assessments, and Settings, all text is unreadable.

image

image

Unable to get on the website.

On April 18,
I was going to do my homework but then a pop of from my diagnostic issue pop up and it said that I couldn't get on the website for internet issues or the web didn't load properly. So firstly I tried to reloading the website, didn't work (strange). Then I switched off and back on my wifi and tried again (also didn't work). So please Betterseqta devs fix this issue.

No settings panel when built from source

Well, there could be I don't know, but I was building EvenBetterSEQTA from source using the instructions given and I get this:
image

I built it on Windows, I do have a linux dual boot there if I need to use that to build it

Breaking Education Perfect

Ok, this is a pretty weird bug, but when you try to log into Education Perfect with BetterSEQTA+ enabled, Google chrome will start using more and more ram until the computer runs out of RAM. I could not figure out what is causing the bug, but this is causing major issues for me and my peers who use BetterSEQTA+. I tried turning off BetterSEQTA+ it fixes the problem. Our schools recently rolled out new computers with 16gb of RAM (Still potatoes though) and it used every 16gbs. I am really confused with what is going on.
Multiple bluescreens were caused trying to diagnose the issue :)

Build error

ERROR in unable to locate 'C:/Users/[redacted]/EvenBetterSEQTA/interface/dist/client' glob

ERROR in unable to locate 'C:/Users/[redacted]/EvenBetterSEQTA/interface/dist/index.html' glob

Settings panel overflows screen on certain sizes

I noticed a lot of my friends had the menu overflow their screen making certain settings unavailable from the embedded menu. I manually created the example below, but it has to do with low-dpi screens and also depending on their laptop settings and screen height etc.

But it's pretty common on a lot of laptops, so I thought it would be REALLY good to fix.

image

Bring back the whats new button

Hey, could we bring back the Whats New button in the settings? I liked reading the new stuff that is released and it doesn't open if I reinstall or anything. Can we bring it back?

Bug: The user denied permission to access the database.

When cross site cookies are blocked backgrounds do not work (as they use indexed DB). It returns this error:

Uncaught (in promise) DOMException: The user denied permission to access the database.

The fix will be just to inform the user that they need to enable cross site cookies. Common places they will be blocked from:

  • Brave browser default shields
  • Ad blockers
  • chrome://settings/content under the third-party cookies section.

Building (Again)

Hey everybody. I am trying to build this again but once again I have ran into issues
image

Got any tips to fix? I am running Manjaro linux (arch based)

Update menu not working

It doesn't seem to work, as I had the extension open last update and no What's new menu appeared after updating.

Migrate codebase to Typescript

Pretty self explanatory but it would do a lot for code maintainability and quality. Less bugs, easier to implement new features or debug existing ones.

Issues with current sidebar implementation

I swapped over to the sortablejs library over on npm for the sidebar but some of the state saving and changing is a little buggy, I'm having a look at rewriting it for better code quality and to not be buggy. I targetted it as it was a fairly complicated large section of code that should've been 'easy' to migrate over, but ran into a couple of unprecedented issues ๐Ÿ˜ฌ.

Timetable Dates Allignment

On the timetable, the dates are not aligned in the proper areas and some dates and days are more to the right than the middle.
For example, Monday is fine but Tuesday is on the left, and Wednesday, Thursday, and Friday are halfway
through different days and their correct day.

BUG: Popup doesn't load?

I don't know why this is happening. But just take a look at the video.

For some reason when the html is modified it will render fine!? And this only happens in the menu popup!

recording.mp4

The settings not opening

Details

When i open the settings it just comes up as transparent and nothing can be customised.

Screenshot 2023-11-30 at 8 37 31โ€ฏpm
Checklist
  • Modify interface/src/pages/Settings.tsx โœ“ ab3bc79
  • Modify src/css/injected/transparency.scss โ‹ฏ

Flowchart

Shortcuts Duplicating on Homepage

If you are on the homepage and continue to click on "home". It will duplicate all of the shortcuts you have inside of the container.

image

Use of Unicode icons within CSS creates undefined behaviour and general weirdness

Good afternoon everyone,
In my testing of BetterSEQTA+ and in my bugfixing, I have found that the use of unicode icons within the project creates undefined behaviour, that appears sometimes, but disappears other times.

Sometimes, said unicode icons such as the delete icon disappear and are replaced with the unicode icon not found placeholder.

I have found that its occurrence fluctuates, and because of this, I couldn't take a screenshot of it.

I believe the best course of action would be to replace the unicode icons with SVG images, as they have proven to be much more stable

Kind Regards

Custom Message folders

Organise your messages into custom folders (which add their own tabs kinda like gmail etc.)

Adding AI to EvenBetterSEQTA?

I propose adding AI functionality to EvenBetterSEQTA to enhance its capabilities. This will involve integrating machine learning models and natural language processing techniques to provide smarter and more efficient solutions.

Custom Shortcuts

Hey
They still don't work, this time they don't show up at all.
P.S BetterSEQTA+ be looking clean :)
image_2023-10-13_082317975
image_2023-10-13_082342835

Animation for DM loading

could we change the default loading animation for when you search DMs to a EvenBetterSEQTA, it doesn't look very consistent (except for the colours of it)

Creating DMs in dark mode results in text you cannot see.

Using BetterSeqta+ has shown something important that needs to be patched.

Whenever I type a DM into the Compose DM field, while dark mode is enabled, the text is unreadable.

I feel like when dark mode is enabled, the text in fields goes white and when light mode is enabled, the text goes dark.

Switching to Svelte for Enhanced Performance on Slow Devices

I'm exploring the idea of switching from React to Svelte for our embedded components and pages, especially given our application's usage on slower laptops. I'd love to hear your thoughts on this. Here's a quick breakdown of why Svelte might be a better fit:

  • Performance Boost: Svelte compiles to highly efficient vanilla JS, offering faster load times and smoother performance โ€“ a key advantage for users on slower laptops.

  • Simpler Code: With its less verbose syntax, Svelte can make our codebase more readable and easier to maintain.

  • Reduced Bundle Size: Svelte's leaner output means smaller bundles, leading to slightly quicker page loads, a crucial factor for our target user base.

  • No Virtual DOM: This reduces memory consumption, enhancing performance on older, less powerful laptops.

Looking forward to your feedback and suggestions!

And because its always running in the background in SEQTA it may give some pretty major gains!

Low-overhead version of BetterSEQTA+

Good afternoon everyone,
Here I am putting forward the suggestion/tracker of a low-overhead version of BetterSEQTA+

I noticed that upon loading BetterSEQTA+, it felt really quite bogged down compared to HyperSEQTA or the original BetterSEQTA, probably because of the new computing-intensive animations and themes.

I would like to propose a new setting which would allow the user to remove all non-essential compute-intensive tasks, such an animated backgrounds, themes, flashy animations, etc.

I believe we could also do a lot of optimisation in order to minimize overhead, which we can gradually work on as time goes on.

Kind Regards

Custom shortcuts

If you refresh the page, the custom shortcuts will disappear. The icons are also not centered and are cut off. The shortcuts still stay in the shortcut settings
image_2023-09-11_102814389
image_2023-09-11_102851772

Custom Theme Creator

A new system to create custom themes with css and custom images. In the future some functionality can be turned into tools so that you don't need to know how to code.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.