Skip to content

New Next.js Frontend - #609

Merged
KavikaPalletenne merged 41 commits into
CHAOS-571-integrate-be-fefrom
CHAOS-598-nextjs
Jan 14, 2026
Merged

New Next.js Frontend#609
KavikaPalletenne merged 41 commits into
CHAOS-571-integrate-be-fefrom
CHAOS-598-nextjs

Conversation

@KavikaPalletenne

Copy link
Copy Markdown
Contributor
  • Rewrite frontend in Next.js

gyoumi and others added 14 commits October 10, 2025 18:42
* added button(non-functional) yipee

* redirect into create campaign form

* Got campaign creation working, banner giving problems though

* Added Method::PATCH

* removed unnecessary api call and cleaned up some code I wrote

* bun migration on this branch

* replaced all mentions of yarn with bun

* conflict fix

* fix `create_campaign` handler

* dev user login instructions

* rename route for campaign create page

* remove campaign plus button

---------

Co-authored-by: Jared <jaredlucasschulz@gmail.com>
* feat: added published flag to campaign

* add `published` flag to every Campaign struct

---------

Co-authored-by: Alex_Miao_WSL <yuan_sen.miao@student.unsw.edu.au>
* feat: added published flag to campaign

* feat: implemented DevToolBar

---------

Co-authored-by: Alex_Miao_WSL <yuan_sen.miao@student.unsw.edu.au>
Add documentation for new `Organisation::get_by_admin()` function
Allow application owner, and members of organisation to read application attributes & questions
* Almost done, now just touching abit on UI, and cleaning codebase

* fixed codebase and implemented the delete button

* fixed submitting error for mcq, and also added edit button lockout

* fixed the ranking block edit buttion issue, also cleaned up codebase
* Almost done, now just touching abit on UI, and cleaning codebase

* fixed codebase and implemented the delete button

* fixed submitting error for mcq, and also added edit button lockout

* fixed the ranking block edit buttion issue, also cleaned up codebase

* fixed migration
@KavikaPalletenne KavikaPalletenne added this to the Backend Rewrite milestone Dec 3, 2025
@KavikaPalletenne KavikaPalletenne added A: Frontend Frontend related issues A: Backend Backend related issues labels Dec 3, 2025
initial nextjs setup

rename "Resume Application" -> "Continue Application"

update frontend-nextjs/.gitignore

Update bun.lock

setup server-side auth functions

basic sidebar

setup i18n

add common terms to dictionaries

remove unused backend imports

run rust build workflow on pulls to `CHAOS-571-integrate-be-fe`
fetch user organisations for sidebar

handle organisation change on dashboard
add data table to display campaigns
KavikaPalletenne and others added 3 commits December 11, 2025 01:08
application review setup

campaign details rearrange

application review scaffold

move application models

application review component basics

get, set and update application rating

add `chaos.png`
* initial devcontainer setup

* basic email template get, update and delete

* template creation ui

* remove error printing

* convert all plain text responses to `AppMessage`

* fix email template card margins

* wrap `params` prop type with `Promise<>`

* actions workflows for nextjs

* add @radix-ui/react-alert-dialog

* add @radix-ui/react-tabs

* only run workflows when relevant paths modified
KavikaPalletenne and others added 2 commits December 11, 2025 01:09
Update .gitignore
Co-authored-by: Alex_Miao_WSL <yuan_sen.miao@student.unsw.edu.au>
drboom16 and others added 5 commits December 11, 2025 01:09
* campgaign details can be edited now

* removed unused state

* add new `*_MAX_*` env variables to rust workflow

* run rust workflow on pulls to `CHAOS-598-nextjs` branch

* reduce database seeding role desc length

* increase `ROLE_DESCRIPTION_MAX_CHARS` in workflow

* fix seeder imports & errors

* check in Cargo.lock

* fix lucide icon imports

* change `Promise<void>` returns to `Promise<AppMessage>`

---------

Co-authored-by: Kavika <kavika.palletenne@devsoc.app>
* left required image upload and chopped frontend design to fix

* fixed required image upload, and fixed abit of frontend, creating pr

* add slug to new campaign form

* don't force proper slug on manual edit

* add indexes to join columns

* fix duplicate index on `ranking_answer_rankings` table

* remove `UNIQUE` on join column indexes

* add required `UNIQUE` constraints

* fix seeding application users

---------

Co-authored-by: Kavika <kavika.palletenne@devsoc.app>
* Added fields to campaign and organisation

* add dev email as admin in seeding script

* Create build-seeding-binaries.yml

* create db before building seeding binaries

* Delete build-seeding-binaries.yml

* update database-seeding run with `--email` arg

* Created client facing campaign details page

* Updated campaign rolls endpoint to accept campaign_id as a number for proper fetching of roles per campaign

* campaign details ssr & translations

* fe campaign type fixes

* Update Cargo.lock

* fix changing RoleDetails id type to number

* Changed 'slate' colouring to 'gray' and removed dark mode tailwind support

---------

Co-authored-by: Kavika <kavika.palletenne@devsoc.app>
Co-authored-by: Christian <199553279+drboom16@users.noreply.github.com>
@KavikaPalletenne

Copy link
Copy Markdown
Contributor Author

Squashed several commits into simpler feature-based commits

@KavikaPalletenne

Copy link
Copy Markdown
Contributor Author

Merge commit this

@KavikaPalletenne
KavikaPalletenne force-pushed the CHAOS-571-integrate-be-fe branch from 350ebd2 to 5e20dbe Compare December 10, 2025 14:17
KavikaPalletenne and others added 14 commits December 12, 2025 02:27
* Created functionality for uploading and deleting multiple selected attachments for a campaign

* restore deleted workflow, readme & git files

* restore newline

* campaign attachments storage fixes

---------
* feat: implement backend route for getting all average users rating per application

* fix: remove uneeded file

* feat: Update the extraction logic for backend and fronend

* feat: adding button for average page from campaign

* feat: implement the front end and backend testing update

* feat: moving the filter the right most table position

* feat: fixing the calculation on frontend and update backend extraction

* feat: updating the looks on the front end so that individual review looks like one row when expands

* fix: recover deleted package-lock.json

* feat: update to use dic for future easy usage (new features)

* Delete frontend/env.development

* fix seeder org admin overwrite

* application ratings model fixes

* update seeder ratings to 1-10

* new application summary page

* update dependencies

* update nextjs

* new `CampaignOrgMember` authZ guard

* fix lucide `BarChart` icon import

* rollback `react-resizable-panels`

---------

Co-authored-by: Kavika <kavika.palletenne@devsoc.app>
* basic questions editing ui

basic questions editing ui

basic option editing functionality

* frontend question crud setup

* question update and persist

* add new questions

* delete questions

* add existing questions
* initial nextjs setup

* rename "Resume Application" -> "Continue Application"

* update frontend-nextjs/.gitignore

* Update bun.lock

* setup server-side auth functions

* basic sidebar

* setup i18n

* add common terms to dictionaries

* remove unused backend imports

* run rust build workflow on pulls to `CHAOS-571-integrate-be-fe`

* react query auth setup

* fetch user organisations for sidebar

* handle organisation change on dashboard

* setup basic dashboard campaigns page

* add data table to display campaigns

* dashboard campaign details page

* application review setup

* campaign details rearrange

* application review scaffold

* move application models

* application review component basics

* get, set and update application rating

* fix setting & updating application rating

* add `chaos.png`

* add buttons for publish & edit campaign questions

* Email templates UI (#608)

* initial devcontainer setup

* basic email template get, update and delete

* template creation ui

* remove error printing

* convert all plain text responses to `AppMessage`

* fix email template card margins

* wrap `params` prop type with `Promise<>`

* actions workflows for nextjs

* add @radix-ui/react-alert-dialog

* add @radix-ui/react-tabs

* only run workflows when relevant paths modified

* Update .gitignore

* Update .gitignore

* chopped drag and drop

* drag and drop less chopped

* less chopped drag and drop

* role tabs

* textbox

* refactor roleselector and switch to globals

* save role selection and fix frontend 404

* cleanups

* fix ranking(bit of vibe)

* fix role ordering

* run migration

* fix: make applicationanswer keep track of qanda states

* feat: refactor to prefetch answers

* feat: display questions inside card

* card submit

* fix: asterisk on required

* fix: get card to deactivate

* fix: shared answers now update in card

* feat: guard submitted applications from accessing the apply screen

* fix: do a pass to clean up some code

* feat: use dict across component

* fix: dropwdown clear works without bricking the backend on fetch, now need to refactor shortanswer and multiselect to simply delete answer

* style: fix no answer message

* feat: refactor empty question types to use delete answer

* fix: fix a few breaking changes caused by swapping over and in general

* fix: fix question type logic which broke when swapping over to the delete logic

* fix: bug fixes

* fix: role reordering behaviour

* fix: fix inconsistent redirect behaviour

* chore: regenerate bun thing

* merge: more merges + bug fixes

* feat: link answerpage component to campaign info component

* fix: wait for queries to be ready before repopulating qamap, (hopefully) avoiding races between updating shared questions and reviewcard

* chore: remove node_modules

* fix: cleanup file

* fix: stringify answers in application review page
* feat: new deployment prep branch, more up to date changes side-stepping merge conflicts hopefully

* feat: made seeder and bun.lock up to date with laest changes

* restructure deployment seeding

* fix seeder `server::*` imports

* styling and unneeded file removal

* deploy workflow fixes

* add `CHAOS_SUPER_USER_EMAIL` to test .env

---------

Co-authored-by: Kavika <kbpalletenne@gmail.com>
@KavikaPalletenne
KavikaPalletenne marked this pull request as ready for review January 14, 2026 11:24
@KavikaPalletenne
KavikaPalletenne merged commit f6e1b94 into CHAOS-571-integrate-be-fe Jan 14, 2026
5 checks passed
@KavikaPalletenne
KavikaPalletenne deleted the CHAOS-598-nextjs branch January 14, 2026 11:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A: Backend Backend related issues A: Frontend Frontend related issues

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants