You are browsing as a guest. Sign up (or log in) to start making projects!

Novara - Learning Website

  • 20 Devlogs
  • 52 Total hours

Education one lesson at a time :D BUILT BY HUMANS: https://github.com/Cassetu/Novara (check the commits)

Open comments for this post

2h 23m 38s logged

v1.04.98

Site is still unusable currently :Because-its-fun:

*Continuing the data refactoring, I fixed some of the references in openSyllabus. I also completly removed the faulty references to isBundle(), i accidentaly messed up the case of loadIndex to LoadIndex but luckily a simple glance at the console pinpointed it for me :D (Thank god for descriptive error messages)

  • Added the hackatime lapse links to the notes (since i want to use nice formatting without ai accusations i lowkey need to do that)
  • Started doing notes on “The Science of Logical Reasoning specifically for: Jerome Bruner Theory of Cognitive Development.” Its for building good curriculums and proper teaching, they have this cool thing called a “spiral curriculum” that you should search up.
  • (I’m also trying out a recording timelapse system, that should be better than lapse since lapse only takes like a picture every minute and stiches it together, this takes a picture every second and then compresses it) the video is only of v1.04.97 -> v1.04.98 editing portion

Thanks for your support! :D

0
0
66
Open comments for this post

3h 52m 29s logged

v1.04.91

Celebrating my 250th commit!! :D

  • fully deleted the curriculum tool since its frustrating and too hard rn and i’m going to do it later after i do my data refactor
  • removed the ai detector thing, the link still works for now, but I don’t think i want to use it because its too unreliable, and is too much of a project in its own right than a small tool
  • I’m doing a major refactor of my data structure. Previously, my curriculum information all sat in one MASSIVE json. but now i have a complex folder network. Each curriculum will have an index.json file, so the catalog.json routes to the index.json that leads into the courses, then to the sections, and down to the individual lessons. Its kinda like a phonebook… i think. Every lesson will be its own json with its own list of “blocks” that are pieces that i can take apart or put together to make lessons unique! Kinda like its own mini programming language lol.

Currently the site is unusable since the course.js isn’t fully complete to understand the new data structure. :P

0
0
249
Open comments for this post

2h 17m 21s logged

v1.04.76

Taking a break from psychology notes to do some coding again.

  • began working on a curriculum tool so educators can easily build em without having to work through the complicated json structure. its a bit hard since i want to export a zip, and im not entirely sure how that would work, and also i need to double check how my course.js processes the json so i can get exactly all the information to put into it.

  • ai detector thing. examines github repositories and find all comments and flags exessive amounts, or exessive explanations in them (classic ai fingerprints) as well as flagging verbose function names and shows the time it would take to make the project at 70 wpm and detects inconsistencies in commit times (eg 1000 new code typed after 2 minutes of another commit that would be flagged) then gives a % of confidence. 0-30% is prob human, 30-50% is mixed unsure, 50-100% is definetly full ai. Before you accuse someone, make sure to do througouh like questioning and interviews and such because this tool is imperfect. This way i can easily identify projects that have disgenuine work and report them to stardance to take care of. (https://cassetu.github.io/Novara/html/aisubTool.html) I got gemini to help reformat the code since it was a bit of a mess, dw i had a full disclaimer. (ai vibe coders take notes.) It was a big challenge getting the github token to work, but it functions now and doesn’t steal your information!! :D

  • also i ran my own project through it once, it was clear, and then i ran it again after commiting it, and now it thinks my project is ai, because the code scans for these specific traces, that are present in the code itself, meaning that if it scans itself, it will find everything its looking for. T - T (false positive in the first image)

leave a comment to help! thx!

1
0
189
Open comments for this post

2h 44m 52s logged

v1.04.74

EVEN MORE PSYCHOLOGY

Covered more things for my next course: “Attachment, Love & Social Dynamics”

  • John Bowlby’s Attachment Theory
  • Internal Working Model (IWM)
  • Adult Attachment Styles (Secure vs. Insecure) (Look at the image)
  • Sternberg’s Triangular Theory of Love
  • Social Exchange Theory (SET)

Read the notes!:
https://github.com/Cassetu/Novara/blob/master/journal/relationship/notesTheScienceOfRelationships.md#attachment-love--social-dynamics

Timelapse:
https://lapse.hackclub.com/timelapse/PppFJPZGUgEp
https://lapse.hackclub.com/timelapse/YqlfYCCx08j7

1
0
117
Open comments for this post

2h 35m 33s logged

v1.04.72

More psychology hooray

Covered more things for my next course: “Stage Models & Communication”

  • Knapp’s Relationship Model
  • Social Penetration Theory
  • Evolutionary Explanation for Physical Attractiveness
  • Johari Window
  • Uncertainty Reduction Theory (URT)

Read the notes!:
https://github.com/Cassetu/Novara/blob/master/journal/relationship/notesTheScienceOfRelationships.md#stage-models--communication

Timelapse:
https://lapse.hackclub.com/timelapse/1LwshB7x8AEr
https://lapse.hackclub.com/timelapse/ir_E9ROtKHUr

I can actually use nice formatting without getting ai accusations cuz i got timelapses lol

0
0
61
Open comments for this post

1h 30m 34s logged

v1.04.69

Yes, i really am studying “The Science of Relationships” to create a curriculum on it.

I researched on the Halo Effect, Mere Exposure Effect, Propinquity Effect, and Social Exchange Theory. These are for the first course in the curriculum: Human Attraction & Opportunity.

Read the notes: https://github.com/Cassetu/Novara/blob/master/journal/relationship/notesTheScienceOfRelationships.md
And Timelapse:
https://lapse.hackclub.com/timelapse/cPdZpEF6u5YJ

1
0
36
Ship #3 💀 Cursed

Novara v1.04.67

Novara is a free learning website, It has multiple courses with varying lesson types, so information is presented and tested in many ways.

Our Goal: Build a library of curriculums so users can get the same learning opportunities of school, with more ways to learn than reading and note-taking, and at no cost to the users. (Verbatim from homepage)

##New Features from Previous Ship include:

  • NEW UI: Earlier versions were apparently too “ai” so I created a new version that hopefully doesn’t look like ai. Since if people think that any part of the website is ai, the website in the whole is low quality rubbish, which Novara is NOT and will NOT allow itself to be. Inline css has been replaced with classes and seperate css files. Those css files are soon to be further seperated into smaller css files to make css navigation easier.
  • Enhanced Privacy Policy: Now includes direct links allowing users to do self-study as well as a profit section.
  • New Syllabus Flow: Now uses a sidebar with the section names and # of lessons. Clicking on the section opens up the lesson on the right side workspace.
  • Mayor Bob: THE MASCOT TO GUIDE ALL!! He hopefully has more character. (I feel like hes better now but idk)
  • Paced Mode!!!: Lessons lock until you reach the current day’s target, missing a day triggers a review quiz scaled to how long you were gone, and every 7 completed lessons triggers a module exam gate (80% to pass, locks further progress until you clear it). Because it matches the real school format of teaching, and i feel like the information will be better retained by ppl if its taught over several days instead of all being shoved down ur throught.
  • AI Courses: ALL GONE!! Looking for proffesionals in single subjects to assist in new proper course creation. Ai work will never replace us!!
  • URL Routing: You can share links and bookmark pages and since its all the same html file, it wouldn’t work, but now it does bc we have the “?=###” things that work now.

##Difficulties:

Forever the bane of my existence, the typos an missing semicolons or braces. Also working through the css to ensure that the content is structured how i like it. Also did a fix where my previous thing would break if a course file was missing when the catalog json had it listed, now it just skips over it. The bonus question was fiting weirdly so i js removed it entirely. At some point i made the dialogue boxes have the typing animation, but i forgot about new lines and whitespaces also have to be considered in that logic, so at some point the dialogue would just trail off the end of the text box lol, without any spaces or new lines. Css bugs also. I js realized i also forgot to style the scrollbars, but ill work on that later.

side note: i figured out how to sign my commits using a SHA encryption service so every commit will say “Verified”

(ONLY REMAINS ONE AI COURSE THAT IS NOW PROPERLY ATTRIBUTED IN ITS DETAILS MENU, THE AI DISCLAIMER IS DISCONTINUED)

README + More Details here: https://github.com/Cassetu/Novara#table-of-contents
PRIVACY POLICY:
https://cassetu.github.io/Novara/html/privacy.html
TRY IT HERE!: https://cassetu.github.io/Novara/index.html
(To access full content you must sign in/register, u can trust Novara, and if you don’t, read the Privacy Policy!)

  • 5 devlogs
  • 19h
  • 12.44x multiplier
  • 121 Stardust
Try project → See source code →
Open comments for this post

3h 31m 31s logged

v1.04.66 to v1.04.67 | 8-8-26

Moved the return button, description link, and progress bar into the syllabus sidebar instead of a separate meta block up top. Added a course description modal you can open from the sidebar. Reworked the syllabus layout to fill the viewport height properly, cleaned up border and shadow inconsistencies, and shrunk the details modal width.

v1.04.65 | 8-8-26

Big CSS pass across course.css, landing.css, and style.css. Reworked the syllabus sidebar to include a course title, progress bar, and a dedicated test button styled with the accent color.

v1.04.63 to v1.04.64 | 8-8-26

Removed the old Godot scene renderer, its CSS, and the leftover import in course.js. Not used anymore. (It was made with ai help)

v1.04.62 | 8-7-26

Added a line to the landing page footer noting no generative AI was used in building the site. (just need to remove the last ai curriculum.)

v1.04.61 | 8-6-26

Cleaned up mainpage CSS spacing and rewrote the landing copy. Turned the trust badge area into a short blurb on why Novara exists, moved the Hackatime badge inline with the time spent text, and added a dedicated trust button linking to the privacy page.

Thanks for reading this! Have a good day yall!

0
0
33
Open comments for this post

4h 18m 41s logged

v1.04.56 to v1.04.60 | 8-6-26

Rebuilt the public course catalog page and gave the about page its own CSS file instead of riding on landing styles, plus a new brand lockup (logo + NOVARA wordmark) in the nav headers across pages. Added a goals section to the about page. Added a “don’t trust us, go check yourself” section and a profit disclaimer to the privacy policy. Swapped “we” language for “I” across the README and privacy policy since it’s a solo project and someone got confused. Small homepage copy tweak too, swapped the trust blurb for a direction to the privacy policy and added a “Time Spent” label above the hackatime badge.

v1.04.44 to v1.04.55 | 8-5-26

Kept moving inline styles into real CSS classes across course.js (loading states, lesson complete screens, onboarding highlight, dialogue boxes, 404 page). Pulled the privacy policy’s inline style block out into its own privacy.css file. Rebuilt the homepage hero into a two column layout with trust info on one side and quick action buttons on the other, replacing the old split image hero. Changed the footer message, revised the README copy, swapped a few README screenshots, and bumped the hackatime badge color. Now that the inline is gone, it will be easier to adjust the ui.

v1.04.36 to v1.04.43 | 8-4-26

Kept clearing inline CSS out of course.js, this round hitting the explorer cards, syllabus sidebar, section buttons, and the course details modal. Added a null check so progress calculation doesn’t break when a course file is missing. Fixed a syntax typo (stray brace) in the syllabus section click handler. Removed the old Godot core AI generated course from the catalog. Added a small watermark comment to files generated by the theme tool, and created a dialog-btn-container class to clean up some remaining inline button styling.

I also figured out how to sign my commits using a SHA encryption service so every commit will say “Verified”

2
0
43
Open comments for this post

1h 52m 15s logged

I’ve been testing out some different ui’s, since yall keep saying mine is AI, which I’ll have you know, is not, its called modern. (i have screenshot of testing out an like windows 98 kinda retro ish ui idk what its called.)

I do want to know this though, What does a NOT AI ui look like?

If my project looks like AI, people will not be keen to trusting my courses, much less learning about them.

If you have any ideas, PLEASE WRITE A COMMENT!! :D

(Also on progress with Novara:
v1.04.29, fix for course.js
v1.04.30, adjust length for the standard practice since if you only do one lesson, and then try to do the practice, you’ll answer 30 questions about that one lesson, mostly repeating the same questions.
v1.04.31, new mastery icon cuz i forgot to do it earlier
v1.04.32, better cover progress with padlock
v1.04.33, remove bonus questions, since they kinda fit weirdly and dont really help even if the science is behind it
v1.04.33, give Mayor Bob more character cuz he sounds like a robot.
v1.04.34, move style.css into css/style.css
v1.04.35, new layout for lessons and sections view.)

3
0
43
Open comments for this post

4h 47m 16s logged

v1.04.27 to v1.04.28 | 8-1-26

Merged the practice hub into one combined view across all enrolled curriculums instead of a separate card per course, so standard and survival practice now pull questions from everything you’re enrolled in at once. Added a countdown banner showing when paced mode lessons renew, and cleaned up the settings label wording twice. (cuz i didn’t like how it sounded)

v1.04.24 to v1.04.26 | 8-1-26

Paced mode is now fully wired in. Lessons lock until you reach the current day’s target, missing a day triggers a review quiz scaled to how long you were gone, and every 7 completed lessons triggers a module exam gate (80% to pass, locks further progress until you clear it). Also fixed the dialogue box to support multiline text properly and fixed the onboarding highlight so it targets dropdown menus correctly instead of the wrong element. (check image to see how it failed lol)

v1.04.19 to v1.04.23 | 8-1-26

Added the paced mode toggle itself (1 lesson a day). Onboarding got swapped from static tooltip cards over to the new dialogue box system, then the dialogue box was made to type itself out letter by letter instead of dumping all the text at once. Along the way: fixed onboarding skipping missing elements, handled rapid clicking through steps, fixed a broken const reference, and fixed reset behavior when onboarding reopens.

v1.04.17 to v1.04.18 | 7-31-26

Deleted a pile of AI-generated lesson bundles that were just cluttering the catalog (architecture, conlang-mythology, html-mastery), keeping only a couple test lessons around. Added question pooling so a lesson can define a questionCount and pull a random shuffled slice instead of showing every question every time.

v1.04.14 to v1.04.16 | 7-30-26

Rebuilt the about page into proper sectioned content instead of one big hero block, swapped in a new header image, fixed a dumb black border bug on the landing page from a leftover CSS class, and moved the difficulty badge over next to the details button.

If you read all this, consider reposting so I can get more attention, thanks!! :D

0
0
49
Open comments for this post

4h 50m 26s logged

v1.04.11 to v1.04.13 | 7-29-26

New course card layout with a proper title/kicker header block and reworked filter buttons, ditching the old boxed style for underline tabs cuz its more dense. Added an orange accent color filled progress bar for anything not enrolled yet. Added a dev time badge to the hero using Hackatime in the main thing. Ripped out the entire theme system, one look only now cuz its better.

v1.04.09 to v1.04.10 | 7-29-26

Full hero section overhaul. New copy, new photo instead of the old doorway SVG, new grid layout instead of flexbox, added a soft noise texture to the landing background. (tryina copy like concrete) Fixed a wrong journal link pointing at the wrong repo path.

v1.04.06 to v1.04.08 | 7-29-26

Pulled a markdown course entry out of the catalog for good, both the JSON data and the catalog listing. (its not good) Small dropdown structure fix in the topbar CSS.

v1.04.04 to v1.04.05 | 7-29-26

Added a course details overlay with author, published/updated dates, and sources. Fixed a typo where the close button ID didn’t match, so the overlay wouldn’t close. (SLOPPY CODDEE FREE MEE FROM ITT AAAAAA)

v1.04.03 | 7-29-26

Added URL routing for logged out users. Course catalog and sign in views now update the URL with pushState and respond correctly on refresh, instead of only working for logged in users. Same stuf.

v1.03.98 to v1.04.02 | 7-28-26

Reorganized assets into an img subfolder and added minibit sprites. Built a reusable dialogue box component with a typewriter-style next button flow, wired it into the landing page as a mayor NPC introduction, then cleaned up its sizing and added a completion message. Updated INFO.txt to match the actual lesson type naming convention and added entries for architectureSim and cookingSim.

Looking for coding profesionalls to help build a curriculum, email me or create an issue on my github!

0
0
44
Ship #2

Novara v1.03.97

Novara is a free learning website, It has multiple courses with varying lesson types, so information is presented and tested in many ways.

New Features from Previous Ship include:

  • Architecture Simulation: A new lesson type where the user can design an simple floor plan, complete with an accurate scale, rectangle tool, and eraser.
  • Privacy Policy: Users can understand how their data is stored within Novara, and feel safer using the relativly unknown website.
  • New Lesson Flow: Topbar no longer uses Opacity, and instead has a back button neatly placed at the top instead of the usual navigation buttons.
  • Alerts: Almost all of the alerts have been moved to custom inline boxes to be more user intuitive and welcoming. I think i missed a few somewhere here and there tho.

AI USAGE DISCLAIMER

AI is used in the generation of our courses. We have not yet received assistance from subject-matter experts in developing our curricula. (I’m working on finding people, hopefully soon)

To maintain quality, the AI is guided by strict instructions designed to reduce low-quality content (“slop lessons”) and encourage materials that engage students in critical thinking and active learning.

Despite these safeguards, mistakes and errors may still occur. If you find an issue, please report it by emailing: [email protected] (Responses take 3-5 business days).

Thank you for helping us improve.

README + More Details here: https://github.com/Cassetu/Novara#table-of-contents
PRIVACY POLICY:
https://cassetu.github.io/Novara/html/privacy.html
TRY IT HERE!: https://cassetu.github.io/Novara/index.html
(To access full content you must sign in/register)

  • 3 devlogs
  • 11h
  • 9.98x multiplier
  • 105 Stardust
Try project → See source code →
Open comments for this post

7h 24m 40s logged

Novara Devlog: Architecture Sim

Notice, the sim is very sloppy and is most definetly gonna be subject to more additions later.

v1.03.97 | 7-25-26

Reworked drawDimension so tick marks always offset perpendicular to the wall, instead of one shared calc for both axes. Room labels now use two separate font scales instead of one. (definetly subject to change) Started tracking a global bounding box so each room draws its own outer footprint dimensions, not just per wall.

v1.03.96 | 7-9-26

Added a Rectangle tool (R key) next to the draw tool, so you can drag out four walls at once. Split drawMeasuredLine into drawWall (just the line) and drawDimension (offset line, ticks, label). Added a live HUD showing length and angle in draw mode, or width and height in rect mode, while dragging.

v1.03.95 | 7-8-26

Built a real toolbar with pen and eraser buttons with my new assets. Eraser uses point to line distance to find and remove walls. Added a confirm modal before doing the full clearing canvas, and replaced the old gradient fade label background with a plain rect.

v1.03.90 to v1.03.94 | 7-7-26

Rewrote room detection as extractRooms using a proper planar graph traversal: build an adjacency list, sort each node’s neighbors by angle, then walk faces with the right hand rule to pull out every enclosed room as its own polygon. This finally supports multiple separate rooms on one canvas. Also fixed a null vs empty array bug, scaled room labels by area, reorganized brand assets, and added eraser, house, and trash icons. (from: https://game-icons.net)

v1.03.87 to v1.03.89 | 7-5-26

First pass at room detection using an adjacency graph, assuming a single closed loop. Fixed several bugs in the adjacency keys and neighbor tracking, added shoelace formula area calculation, and split wall segments at T-intersections so room boundaries follow them correctly. (everything boils down to math and calculations)

v1.03.84 to v1.03.86 | 7-3-26 to 7-4-26

Pulled measurement drawing into its own function so every wall, not just the active drag, shows its length. (very crucial) Bumped the grid scale for easier snapping and more detail when i later add features such as chairs and tables that you can drag in. Added a gradient fade behind dimension labels, then small tick marks at each wall end. (visual aids)

v1.03.82 to v1.03.83 | 7-1-26 to 7-2-26

Wired the sim into the real course system. added a lesson entry so i can properly test it now, imported the renderer into course.js, and fixed leftover syntax typos. (my work has been a bit sloppy recently) Built the actual studio layout with a brief panel and drafting canvas, then added the mouse listeners for drawing walls, with Shift locking to cardinal directions for more percise drawing.

v1.03.79 to v1.03.81 | 6-30-26

Scaffolded the drafting canvas: pixels to feet scale, snap to grid, and the first working render loop with simple grid and stuf. Fixed a small topbar CSS bug where button heights jumped on hover.

If you read all this, thanks :D

0
0
65
Open comments for this post

1h 30m 36s logged

v1.03.78 | 6-27-26

Refactored how navigation flows when a user enters an active lesson block. Previously, I had the topbar fade down to opacity: 0.5 via a body class state, and a separate, clunky #lesson-back-btn floating fixed at the top-left of the viewport. It wasn’t great, and I thought i could do way better.

So instead i cleaned it up, removed the fade, and pretty much “hijacked” the main elements. The standard topbar elements were set to display:none; with the user profile button getting set to half opacity and non-clickable. changed existing #nav-explorer slot by transforming its text to ← Return and changing its weight.

also changed the if (!confirm()) basic alert for my better error alert box. duplicated the old alert box and made another for this one, fit with a cancel button and all.

The main obstacle was handling the application’s default click-routing initialization handlers. Simply changing the .onclick property didn’t work because hidden layout listeners attached via .addEventListener() were catching the event bubbles and dumping the user back to the main curriculum selector immediately anyway. (because remember were hijacking the explore btn)

Fixed it by utilizing Event Capturing:

topNavBtn.addEventListener("click", window.activeTopbarGate, true);

by passing true, the browser catches the user’s click at the absolute top of the DOM tree before the default routers can see it. Inside the wrapper, i ran e.stopPropagation() to stalls the execution chain while the custom gate logic processes.

standard browser alerts freeze javascript synchronously, but custom DOM boxes are asynchronous so a normal return gate wouldn’t cut it. i solved it by wrapping all my navigation cleanup loops inside a functional callback and passing it straight into the dialog box. hit OK, the callback fires and drops you out of the lesson; hit cancel, it just clears the overlay div out of the DOM tree so you can keep working.

its like weaving a thread in a spiderweb (T - T)

also wut u guys feel about the better formatting lemme know, i don’t want it to sound like i just copy pasted chatgpt but i want to explain it better so im a bit conflicted

0
0
24
Open comments for this post

1h 36m 39s logged

v1.03.65 | 6-20-26

Refactored URL routing logic so it sits in one function routeFromURL making it easier to reuse. Before I just had the code duplicated in two places as a quick implementation, and also the back/forward buttons didn’t do anything because there wasn’t a popstate listener yet. Now i have window.addEventListener("popstate", routeFromURL) to fix that issue.

Added a Privacy Policy page matching the Journal Layout, now users can trust Novara (little more than before at least) to keep their information safe when they sign in.

Started a test cooking curriculum, using the cookingSim and HeatControl additions.

Also added an Abstract0, Abstract1, Abstract2 assets to be used later. Abstract2 already implemented into an 404 page and the practice panel when the user isn’t enrolled in any curriculums. fetchCourseData now wraps its fetch in a try/catch and calls show404() on failure.

0
0
26
Ship #1

Novara v1.03.56

Novara is a free learning website, It has multiple courses with varying lesson types, so information is presented and tested in many ways.

Features include:

  • Focused Learning: Enrollment is limited to a maximum of 3 curriculums at a time to encourage focus and prevent overwhelm.
  • Structured Content: Curriculums contain courses, and courses contain modular lessons.
  • Knowledge Checks: Built-in quizzes to test your knowledge at the end of courses.
  • Progress Tracking: Visual indicators to show completed lessons and remaining coursework.

The main architecture is designed using HTML, CSS and JS. Designed to be modular, so adding another course/curriculum is easily done by writing one single json data file.

AI USAGE DISCLAIMER

AI is used in the generation of our courses. We have not yet received assistance from subject-matter experts in developing our curricula.

To maintain quality, the AI is guided by strict instructions designed to reduce low-quality content (“slop lessons”) and encourage materials that engage students in critical thinking and active learning.

Despite these safeguards, mistakes and errors may still occur. If you find an issue, please report it by emailing: [email protected] (Responses take 3-5 business days).

Thank you for helping us improve.

README + More Details here: https://github.com/Cassetu/Novara#table-of-contents

TRY IT HERE!: https://cassetu.github.io/Novara/index.html
(To access full content you must sign in/register)

  • 6 devlogs
  • 7h
  • 14.37x multiplier
  • 99 Stardust
Try project → See source code →
Open comments for this post

2h 3m 42s logged

v1.03.55 | 6-16-26

I added a new lesson type, “cookingSim”, it currently only has one simulation “heatControl”. Its a simple minigame for monitoring heat. Later I will have several cooking simulations, and use them in a cooking curriculum.
The reason for creating special simulations, is because cooking is a visual and hands on thing, you can’t learn to cook by simply reading and answering questions about it.

I’m also working on wiring together a way for the url to reflect the current view, that way you can bookmark specific courses or share specific curriculums.
The main focus of it is: history.pushState() and window.addEventListener("popstate").
Another important part is this:

const params = new URLSearchParams(window.location.search);
const view = params.get(“view”);
const id = params.get(“id”);

so on page load, you can get the right viewport, eg: ?view=syllabus&id=js-course, would show "syllabus" and "js-course".

Since its on page load the code is primarly residing in window.firebaseAuth.onAuthStateChanged since that part automatically signs in the user and skips over the authentication and homepage process if the user has signed in before.

0
0
26
Open comments for this post

2h 10m 10s logged

Added a custom theme tool, automatically generates the code so users can easily build a unique & polished ui.

Easy access in topbar for signed in users and non-signed in users.

Test it out here: https://cassetu.github.io/Novara/html/themeTool.html

(STOP CONSOLTING AI FOR THEMES:

  • Too generic
  • Awful “Extreme Glassy Gloss” style
  • Always weirdly rounded corners )
2
0
441
Open comments for this post

22m 10s logged

fixed some bugs as the focus for today (v1.03.37)

error overlays were stacking in the DOM, so i made a showError() function instead of copy pasting the same code everywhere

also fixed activeCourseRef being stale after practice sessions, was sending users to the wrong place

0
0
12
Open comments for this post

42m 49s logged

Novara is actually a project of mine that I’ve been working on for a while. (Since May 6th)

I just got back into it and added an inline alert box, since the native alert box is shown to be less intuitive and more hostile to users.

Most Devlogs here will be some form of iteration of my onsite Journal, but more in depth, and more focused.

0
0
17

Delete project?

Are you sure you want to permanently delete this project? This action cannot be undone.

All devlogs, followers, and associated data will be removed.

Followers

Loading…