Skip to content

Releases: acmutsa/Portal

v0.7.4

11 Apr 05:35
Compare
Choose a tag to compare

v0.7.3...v0.7.4

Changelog

  • Add Email and Member Points count to admin member view
  • Add download QR code option to admin event view
  • Default event creation semester to the current one
  • Add export as CSV option to member table
  • Add member points to exportable CSV
  • Remove legacy semesters.json config file
  • Add support for adding checkins to events from event admin view

v0.7.3

03 Apr 23:24
7156656
Compare
Choose a tag to compare

v0.7.2...v0.7.3

Changelog

  • New: Revamped Landing Page
  • New: Improved Event Admin View
  • New: Event Member View
  • Moved from CSS-based background images to z-index + Image components
    • Provides Next.js Image Optimization
    • Added ability to generate blur placeholder while loading
  • New: Vercel Analytics
  • TOS Page updated for mobile viewing, content layout improved
  • Switched to proper DataTable for Events page
  • New: Breadcrumbs component to Admin pages
  • Switched Edit Event page to SSR
  • Fixed: Punctuation and some characters being blocked in check-in feedback.
  • New: Custom point count per event
  • Updated: TailwindCSS v3.3
  • New: Checkin Success message randomized, toast length increased
  • Improved /events card title with React Wrap Balancer
  • Added lastSeen property to Member DataTable, sort it by such by default
  • Fixed Identity badge text color being overwritten in MemberDataTable
  • Added secondary-50 color level in Tailwind config
  • Added Date column to Event (eventStart)
  • Fixed /events page being too wide (not obeying 90% width, class overwritten accidentally)
  • Switched from old Railway Prisma migrations (& removed railway.toml)

v0.7.2

05 Feb 11:49
Compare
Choose a tag to compare

v0.7.1...v0.7.2

Changelog

  • Fix bug where the date picker was missing styling in the event creation/modification view leading to it being unusable
  • Change form open/close time auto-update with defaults based on event start/end
  • Fix random type errors in form components
  • Change some of the form language to make functionality more clear
  • Add TOS / Privacy Policy
  • Add TOS to footer

v0.7.1

02 Feb 02:56
8c32d9c
Compare
Choose a tag to compare

v0.7.0...v0.7.1

Changelog

  • Major Revamped the entire admin layout, splitting it into separate pages. This reduces the collosal first-load JS required by the admin section, as well as provides the ability for SSR-loaded data.
  • Major The admin login/logout & middleware has been transformed to use SSR where possible. There still needs to be work for how logging in works, but otherwise, it's much more polished and utilizes SSR, reducing the number of requests made.
    • A new server helper method for validating admin in SSR was created.
    • We're no longer using rewrites in the middleware, instead, redirects with a ?next= query parameter. I really do like the rewrite style middleware, it's very interesting being able to take over any given page and sent it somewhere else, but in my opinion, it's simply not transparent enough and seems hacky. Switching to redirects is much more transparent, and should be resilient to bugs over time.
  • Docs Added more documenntation to helper methods, improved some method type safety slightly.
  • Minor The member /logout route is now SSR only, loading no client-side scripts at all.
  • Minor Global state now splits the authentication process of admin and member - this let's me tell the application that you are/you aren't a member/admin much faster, reducing animations & requests just a little bit.
  • Minor The logo on the index's resolution was reduced to <600px. I could probably push it down further, but at least it's not 1MB.
  • Fix Fixed array key issues in the admin MemberDataTable component.

v0.7.0

02 Feb 01:14
cf1e60e
Compare
Choose a tag to compare

First Release

This is the first labeled 'release' on the repository; I'm choosing a v0 major release version for now until I feel like the app is actually 'done'. Hopefully, by the time the Spring semester is over, I am releasing a v1.0.0.

Changelog

  • Layout structure of the website was completely revamped so that Safari plays nice. The layout should fit into the appDir structure one day without too much issue.
  • We're now on NextJS13 and tRPC v10; every route has been updated and all systems were migrated. Interop compatibility is not used, it was migrated properly.
  • I removed the next-superjson stuff entirely; it allowed serialization of dates easily without having to do anything for the static and server prop handlers. Instead, I just used superjson directly, which is a bit janky looking, but typesafety is maintained, but it's very explicit and not very structurally consistent across the codebase.
  • tRPC maintains superjson transformers without any special requirements.
  • Disabling, manipulating and touching the navbar, footer and backgrounds is a lot better looking and easier now that I added a RootLayout component for controlling all of that.
  • Injecting login state of the member/admin cookies is now possible through SSR. Essentially, this means I can tell the client that the server already checked whether or not they're a member - this reduces that little loading flash in the navbar, as well as takes away an extra unnecessary request.
    • It's not yet implemented, i.e. used, but the actual usage part is a bit more complex since it's implemented per-page.
  • I removed all of the special debouncing behavior from the event filterbar. It looks a lot snappier now, but it's exposed to button spam right now. I'll work on it later so that it just will reject inputs for 500ms. Not the "best" solution, but it should reduce serverload for the low-effort mischevious people.
  • The check-in button is more dynamic now and will inform the user about state more. If it's open, it'll be clickable. If it's not, it's grayed out. If the user has already checked into the event, then it'll show "Edit Feedback".
  • There is now a notification that shows up after checking in. It does not distinguish between submitting & resubmitting a checkin though, so I might work on that a bit.
  • Login cookies won't expire for 2 weeks. The security is also turned up on them slightly, but that is pretty much irrelevant for now.
  • Editing event times is much improved now - it properly intakes the value when editing, and it will show warnings about the duration of the event (too short, vs too long, but won't explicitly prevent you from submitting as long as it ends >= 1 minute from the start).
  • The ?next= query parameter is now working again for client redirects, and the check-in button redirect doesn't spit out a really freaky internal URL anymore.