Superset App
Superset is a startup dedicated to revolutionizing the way personal trainers create and deliver workouts to their clients. By offering a seamless and user-friendly platform, Superset simplifies the process of creating interactive workout plans through an intuitive spreadsheet interface, while providing clients with a comprehensive mobile app to guide them through their fitness journey.
As a Full Stack Engineer at Superset, I played a crucial role in developing and enhancing the platform's features using a robust tech stack:
- Frontend: ReactJS (Web), React Native (mobile)
- Backend: Django
- Infrastructure: Docker, Elastic Beanstalk
- Database: PostgreSQL
Some of the key features I've built for Superset include:
1. Offline Workout Notification (Mobile App) To ensure clients never miss a workout, I implemented an offline notification system that reminds them to return to an active workout session, even when the app is not running.
2. Flexible Payment Scheduling (Web) Recognizing the diverse needs of clients, I integrated a new payment schedule feature that supports intervals ranging from weekly to bi-weekly and monthly payments, providing greater flexibility and convenience.
3. Unit System Support (Web and Mobile) To cater to clients' preferences, I implemented support for both the metric (kilograms) and imperial (pounds) unit systems across the web and mobile applications.
4. Workflow Improvements To enhance the development process and ensure code quality, I introduced linting, Git hooks, and continuous integration/continuous deployment (CI/CD) practices, streamlining the workflow and enabling efficient collaboration among the engineering team.
5. Expo Migration to SDK 50 As part of ongoing platform maintenance and upgrades, I successfully migrated the Superset mobile app to the latest Expo SDK 50, ensuring compatibility with the latest features and improvements.
6. Workout Duplication in Superset Sheets To save time and effort, I implemented a workout duplication feature in Superset Sheets, allowing trainers to easily create new workout plans based on existing ones, with the ability to modify and customize as needed.
7. International Phone Number Input Recognizing the global reach of Superset, I implemented an international phone number input feature, ensuring that clients from around the world can easily provide their contact information during the onboarding process.
8. Workout Reordering To provide trainers with greater flexibility in organizing workout plans, I introduced a workout reordering feature, allowing them to easily rearrange exercise sequences within Superset Sheets.
9. Workout History Grid Layout To enhance the user experience and provide a more intuitive overview of workout progress, I implemented a grid layout for displaying workout history, allowing clients to easily track and visualize their fitness journey.
10. New Side Drawer for Superset Sheets In pursuit of a more streamlined and user-friendly interface, I introduced a new side drawer for Superset Sheets, providing trainers with quick access to essential features and tools.
11. Workout Web Preview for Coaches To facilitate better communication and collaboration between trainers and clients, I developed a workout web preview feature, allowing coaches to easily share and preview workout plans with their clients.
12. Coach Mode (Mobile App) Recognizing the importance of personalized coaching, I implemented a Coach Mode feature in the mobile app, enabling trainers to run and monitor their clients' workouts, providing real-time guidance and support.
13. Performance Improvements in the Django API
Using the Django Debug Toolbar for performance monitoring and debugging, I was able to optimize a request that made 26 queries down to 11 queries by prefetching relationships.
queryset = queryset.prefetch_related(
models.Prefetch(
"client_assignments",
queryset=ProgramClientAssignment.objects.filter(
status=ProgramClientAssignmentStatus.ACTIVE
).select_related("client"),
)
)
default 61.38 ms (26 queries including 16 similar and 16 duplicates )
14. E2E Test
15. Bug Fixes and General Improvements Throughout my tenure at Superset, I continuously worked on identifying and resolving bugs, as well as implementing general improvements to enhance the overall user experience and platform stability.
Experience the Superset platform for yourself:
- Web App: https://www.supersetapp.com/sheets
- Android App: https://play.google.com/store/apps/details?id=com.supersetapp.android&hl=en&gl=US
- iOS App: https://apps.apple.com/jm/app/superset-app-for-clients/id1658460858
With its innovative approach and comprehensive feature set, Superset is empowering personal trainers to provide exceptional coaching experiences while enabling clients to achieve their fitness goals more effectively.