Thomas Bowden Portfolio Logo
Initialising_
Thomas Bowden Portfolio Logo
Web DevReactJS

SwanSUP

Author

Thomas Bowden

SwanSUP_DEMO_Meta_Image

Building a digital platform for a university sports society

A university sports society involves more than the activities that bring its members together. Behind every session are the practicalities of managing membership, organising events, collecting waivers and keeping information up to date.

SwanSUP is a web application I developed for Swansea University's Stand-Up Paddleboarding Society to bring these processes into one place.

Designed around the society

The application supports both members and the committee responsible for running the society. While members can manage their accounts and access relevant society information, the committee has a dedicated portal containing tools for day-to-day administration.

The committee portal brings together a range of functionality, including:

Events and attendance - organising society activities and keeping track of attendance.

Member management - accessing member profiles, membership information and waiver submissions.

Committee availability - coordinating availability and identifying suitable times for committee meetings.

Meeting minutes and tasks - maintaining meeting records and managing outstanding committee actions.

Drivers and fuel - accessing driver information and supporting transport and fuel-cost calculations.

Society passwords - centralising access to shared society account credentials.

Software information and updates - communicating changes to the application and providing relevant software information.

An administrative overview brings important information together, including upcoming events, member numbers and outstanding tasks, helping the committee quickly see what needs attention.

Behind the application

SwanSUP was built using React and Firebase, with Firebase Authentication managing user sign-in and Cloud Firestore providing the underlying data storage.

One of the important considerations was how different users interact with the application. Members and administrators have different responsibilities, so I implemented role-aware functionality and protected routes to provide access to the appropriate parts of the platform.

The application also needed to support workflows that connect different parts of the system. Member profiles, onboarding, waiver submissions and administrative tools all rely on information being handled consistently as users move through the application.

Beyond the core member experience, I developed additional functionality to support the software itself, including an update management workflow that allows software updates to be drafted, published to specific audiences and tracked as users see them.

This meant thinking beyond individual screens and considering how authentication, user roles, database relationships and administrative workflows interact across the application.

Software that continues beyond launch

SwanSUP has also given me experience of maintaining an application beyond its initial development.

I continue to focus on its technical development, refining workflows, improving administrative functionality and keeping the underlying application maintainable. That ongoing work has reinforced the importance of considering how software will be supported and adapted as an organisation's needs evolve.

Building SwanSUP has been a valuable opportunity to develop software around the needs of an existing community, balancing a straightforward member experience with the practical tools required behind the scenes.