June 17, 2025
Woah an update?! Small one but one at that
- Instead of importing sessionData into children just pass it to them
- Move apiUrl into sessionData
- Gave a type to edulink and sessionData
- I actually implemeneted the remember me checkbox
- Load footer data instantly for faster view then once club data is pulled just update footer data
Woah a devlog? That must mean? MORE STUFF RIGHT? No but BUGFIXES
- Instead of assuming endtime for club in timetable we get clubDetails.result.club.sessions item endtime for it if exists
- fix wait for nav wheel anim not running because it was set to true because of prev item and swap to new item
- Updater text now doesn't appear in web version, bug fix in the updater in settings to show Checking for updates text
- Fix ?page not working because I did a dumb and messed up load check so if page loaded before check ran it wouldnt work
Another day another sticker i need to get
But this update comes with BUG FIXES, IMPROVEMENTS AND A FEATURE?!
- Behaviour/Achievement feels slightly faster loading
- Made the detentions page look better
- IDP Login button css fixed in the default theme
- Use ?code= to auto enter a post code
I need today's sticker so uhm UPDATE
Homework page is now sorted closet to farest from due date
Auto version bump in the github action
Fix 404 on github pages because of dumb github
A fully implemeneted club timetable in timetable page
Some bug fixes
Description change in som
Change repo for it in som to github
Add the demo link
Erm Update?!
Clean up of timetable code because it was a mess
Bug fixes to the updater
View club in footer for next/current
View clubs in timetable though not fully complete yet its just basic info
Exam item load times improved a lot by grabbing exams first then the other pages on it
More toasts for login for errors
Updates yum :3
Slight improvement to responsiveness in items
Ability to join/leave a CLUB now
Bug fixes to ?page= so items can load on page reload now
Swapped to package.json for versioning on releases
Clean up of sum code
A fix in the demo json file to be correct because these demo files I have access to are definitely bad even though they are offical some just link to the wrong method with wrong data qwp
Woo! More Updates!
Erm watteinstaller. Mmmpfgh you can now download RELEASE BUILDS FROM THE GUTHIB can't promise they wont be buggy af BUT THEY EXIST
I fixie the all clubs to allow preview because i forgor to set member to false so it only showed clubs your in
QUACK
Better page history :3 Opening items adds a query to link to that page and adds it to history allowing you to use back button to exit page or refresh to go back to the page without an issue
This devlog is less of a update more of a I hate github actions devlog
The 3 hours was spent fixing github actions to allow windows building to work, optimising it so its not slow. It does also come with some bug fixes made to the thing but not that much I just really hate github actions BUT PRE RELEASES.
I lied I forgot to post the devlog so im combine ANOTHER DEVLOG WITH IT
i spent 3 hours trying to get a navwheel to be 10px away from the item box 3 HOURS I HATE RESPONSIVE DESIGNS I HATE WEB DEVELOPMENT GOD WHY DOES THIS SUCK SO MY PLEASE JUST LET ME EXPLODE
Also fixed dumb type errors
Devlogmaxxing :3
No more default 60 interval now prefer statusinterval given by api
Speed up of clubs by pulling data at same time not at once
Improved progress bar so it updates more based on new data pulled
Removed component from items.ts as unused
Removed useless console.logs
Fixed default theme messages.module.css _time wrapping to new line when not needed
Made namespace type of achievement and ablookup
Thats about it goodbye
Hallo :3
You no longer have access to all items :( it now uses id which is file name and props.sessionData()?.personal_menu which is an array of all items you are allowed access to
More clean ups like
- Navigation no longer using create effect instead manually setting the data when it happens
- Navigation inferring more data from isSlid instead of explicit set states like showBack, itemOpacities etc
Quack :3
Some bug fixes added to it like
- Fixed all items being set to back icon in some cases
- Progress not resetting to 0 if component closed before opened
Default theme shouldn't be broken anymore
Documents allow for download if blob of base64 or if a link then it just opens it in default browser
I should devlog before it gets too long.
Due to me wanting to add support for custom themes my approach to css loading sucked components css's kept inteferring with each other and the parent aka the dash's css affecting footer and header and this got worse with custom css requiring a complete rewrite of how css would be handled instead of loading it with link I am in middle of rewriting it to swap it to CSS modules which prevents css from components interfering with parent and other components and also allows for the ability to allow for custom themes. This isn't much of an update more of devlog to prevent fraud dept thinking I'm committing fraud init and to also keep it from getting to long since last devlog.
New Logo? And UPDATES?! YIPEE
I made a new logo instead of stealing the edulink one get it edulink one because its called Edulink One
Club specific details are viewable now although you still can't join them from this client yet
Renamed a bunch of classes in main.css as they can be affected by items causing overwritten so added a prefix to make it harder to accidentally overwrite the classes of them.
Peak I can devlog now
A few things happened while som was done
View the clubs you are in and all the clubs there is (no joining clubs/viewing club specific details yet)
Modification's to login to provide better security with the autologin as we now don't store password in keyring we store an encryption key in keyring which is used to decrypt users.json to access it slight security advantage.
Some basic bug fixes to it to improve user experience
Hallo I come with updates
Bug fixed an issue with attendance causing it to not to grow in some cases because of forgotten flex-grow
I forgot to make missing data handling on attendance so added that so now it doesn't break design because of it
Links page is made so you can now see your school's links they have added
Might as well devlog before I go bed tonight
Infinite Scrolling (kinda) on messages now so you can load in more messages as you scroll unless well you run out of messages to scroll to
Bug fixed an issue from the infinite scrolling causing grabbing color of BG to be wrong
Basic setup of Attendance Statutory page
I come with UI improvements!
The loading of items was slow from the dynamically loading as before it waited for all now it adds item when ever a item finished loading so items appear faster
On Webkit2GTK atleast the animations of the component pages loading is significantly less choppy compared to before by moving transition into components themselves which also allows items to show it when they finished loading this with adding composite made the transition smoother.
You might notice less icons in SS's now because its dynamic loaded from components compared to before where it had an static array filled with them
Erm wattecolors? YIpee! Collor matching. Instead of the circle logo thing in middle being white all the time it now picks out the most dominant color in the logo!
I also improved the the animations to be less choppy on Webkit2GTK and the components opening while navwheel is still in animation that with more of the code cleaning made this better! I also wanted to test if it was just webkit2gtk being choppy so a bit of code modifying so now it can run in a web browser by removing the tauri features when accessing from a browser (its still there in the app)
Woo 40 hours! Not much of a feature update but i might aswell devlog.
I did some ckeaning of the codebase making dash.tsx go from 600 lines of very ugly code to 125 lines by moving into seperate files instead of one huge one.
God I don't know how I allowed it to get this messy but more cleaning to do!
With passed page setups i got lazy but i added to it!
Timetable now has selectable weeks and days! Although you may notice if you use EduLink day names may be different because it pulls day names straight from api instead of using a set day names so on the offical it can be Mon but on this it can be MonA.
You can also logout now making my life easier from testing with demo and my own account
I got annoyed with having 2 seperate codebases one for demo api and one for the real code so i choose to combine them into one since this is typescript so i can use type safety for correct types for correct requests. I also did some code cleanup so there isnt a spam of createSignals in login now i prob did some more stuff 18 days ago since last devlog but i can not remember. I added new demo button to it to access the demo api for testing
Holy! 35 HOUR GOAL HIT! NEW DEVLOG BOIS
- Fixed deletion
- Fix bugs in frontend/backend like signup bug causing unauthorized because missing id and usernaem in jwt token
- Cleaned up the frontend code base
- Moved user from route to component
- Dark Reader lock added when darkmode is set
Holy quackers! A NEW DEVLOG! YIPEEEE.
Dark Mode is here very yum its the default meaning you gotta manually set to disgusting light mode if you want it
Added create signal to prevent multiple pow's calculation by not allowing user to hit enter while pow and other stuff is processing
Some bugfixes
DARKMODE IS CATPPUCCIN YIPEE
Woah. A NEW DEVLOG?! THATS INSANE!
The endpoint /api/v1/game/leaderboard now gives time taken for each user to find
SERVER NOW SENDS UTC INSTEAD OF EUROPE/LONDON
Fixed daily uuid not being wiped because of timezone mismatch
YOU CAN SEE LEADERBOARD PAST DATA IN UI NOW?! THATS CRAZY
Erm? Bugfixes? More data tracking? YES PLEASE!
UUIDLE now tracks more data from the user to sell to the CCP
UUIDLE has a table to track luck, skill and time taken to find UUIDLE on logged in user accounts
Fixed info in body of response not showing because of not existing on model
Refresh Tokens now expire after a month instead of existing FOREVER!
Removed dumb refresh tokens map so now they ain't stored in map and uses DB instead
Hey! I come with new updates!
UUIDLE now tells user when error and doesnt populate row with the error
You can now delete and edit your account user data
Some code bug fixes
New endpoints of /api/v1/user/me to view your data, edit it or delete it
Client now uses the refresh token to keep logged in
Prob sum other changes i forgor
Holy today was a bugfixing day!
I fixed multiple bugs in leaderboard and web client such as wrong chars being displayed as correct chars leaderboard not showing all entries sometimes chars not being shown etc
Leaderboard is now fully auth required so to get on leaderboard you need an account
I somehow forgot to migrate the flush to db function from old unused map to the new map causing count and other stats never to persist to db
Hallo! I haven't posted in devlog in couple days but that because I have been working hard on authentication. I just uploaded a commit to the backend containing basic auth which isnt in usable state yet but the commit does fix a bug causing impossibility of winning due to bug in leaderboard causing a type error. Although you get a sneak peak into the works!
Holy Crackers! I haven't made a uuupdate in a couple days~
I FORGORRR IM SORRRRRRRRRRRRRRRRRRRRRRRRY
There has been a lot of updates since the last Devlog
- Improved Ratelimit so now it increases PoW difficulty when hit until 5 minutes after Ratelimit was hit which it then resets back to default
- Code Restructuring so its not a huge mess now it following the ElysiaJS Best Practice Structure
- Bug Fixes to Solve issue with Leaderboard
- Killed leaderboard as havent finished readding it after restructuring
- Cloudflare Under Attack Mode enabled to prevent bots
- Prob more i cant think of
HALLO I COME WITH UPDATES AAAAAAAAAAAAAAAAAAAA
I quacked at people more
I made stats for yourself quack
I made your stats persistant for that day so that it resets your attempts everyday for new uuid but for the current day if you did it you can leave the site come back and see your stats
(i 100% didnt pull answer from db for the screenshot quack)
I should make devlogs for this i forgor.
I created the backend that will be hosted on nest so that daily's UUID's are generated and prevent cheating from the client as the server handles the creation of daily UUID's and receives request to see if UUID is correct if it is it returns correct if not it returns char pos of correct chars and wrong chars but in uuid like in Wordle. I also made a basic design for it which needs improvements.
Ever thought Wordle was too easy? Ever thought why Wordle is just English? Well screw English and screw easy. UUIDLE is a version of Wordle but uses UUID instead of stinky English words. It increases the guess count to 10 instead of 6 to make it a bit more fair.
Hallo! I come with updates.
- I made the achievement's page
- Fixed progress bar not appearing after one item page used it
- Fixed item page appearing before it finished grabbing data it needed
- Fixed cleanup of item page CSS to now not stay when closed causing it to break other item pages
Meow! This update took longer then expected due to school being out making it annoying! I had to create a mimic API with close to the API requests as I could get just to be able to get timetable setup. Although this mimic API will be helpful with adding more features to the client which I don't have access to on my personal account.
Hallo! I come barely updates!
- Implemented API for current, next, messages, name, avatar and logo
- I hate CSS more now this nav wheel is such a pain in the ass
- Bug fixes so I don't lose my mind as login.tsx css used to be kept when redirect to dash.tsx
- Some code cleanup not much though
- Nav Wheel uses tooltips instead of text next to them as that would be painful to implement
Woah?! What's this? It be Openlink! A project that be a custom client built of the EdulinkOne API. This was a pain in my ass. What makes it different from the original client though? Well the less API calls because the original made unneeded API calls like for example the External Links page making an API call for each item to grab image when it was given the images in a original API call it made, the Catppuccin theme and the option to fork and build custom themes, the app form so you can open the app on desktop and be auto logged in, the more detailed pages like timetable including club timetable unlike the original client requiring you to view it in clubs tab and more!
This was widely regarded as a great move by everyone.