Application Purpose and Goals
Pausit is an application focused on improving users' health and well-being during work hours. By offering regular break exercises and ergonomic advice, the platform aims to prevent work-related injuries and promote a healthy work environment.
Features and User Experience
-
Creation of Custom Workouts: Users can create their own workouts by selecting and combining predefined exercises. These sessions can be scheduled to notify and remind the user when it's time for movement breaks.
-
Statistics and Progress Tracking: The application saves statistics of completed workouts so users can track their progress over time. This provides users with insights and motivation to maintain or improve their exercise routines.
-
Daily Well-being Evaluation: Users are asked daily about their well-being to create awareness of their emotional and mental state. This allows users to track and evaluate their overall well-being.
Targeting Companies and Organizations
Organization and License Management: Pausit also targets companies and organizations. It is possible to create organizations and purchase licenses for members. These licenses provide access to various training modules within the application.
Technical Architecture
-
Frontend and Backend: The frontend is built with Flutter for cross-platform compatibility, while the backend is based on Node.js and TypeScript. The application's data is stored in a PostgreSQL database hosted on AWS (Amazon Web Services).
-
Authentication and User Management: User authentication is done through account creation with username/password or using Google or Microsoft accounts, supported by Firebase for authentication.
-
Platform Expansion and Notifications: The future goal is to expand to multiple platforms, including desktop (macOS, Windows) and mobile devices (iOS, Android). Today, there is an additional app for macOS that provides specific notifications to improve the user experience on that platform.
-
Security Protocols within AWS: The application uses AWS Identity and Access Management (IAM) to manage permissions and access control. Encryption through AWS Key Management Service (KMS) is used to protect stored and transmitted data. Additionally, security groups and network policies are utilized to regulate traffic to EC2 instances.
-
Performance Optimization within AWS: For performance optimization, AWS Auto Scaling is used for dynamic scaling depending on load. Using AWS CloudFront for content delivery network (CDN) and Amazon ElastiCache for caching contributes to improved performance.
-
Scalability within AWS: The application leverages horizontal scaling through Elastic Load Balancing to distribute traffic across multiple EC2 instances. Using Elastic Compute Cloud (EC2) Auto Scaling allows automatic increase or decrease of instances based on demand.
-
Server Placement and Monitoring: All backend servers for the Pausit application are located in the AWS region of Stockholm, Sweden. AWS CloudWatch is used for monitoring resource usage and AWS CloudTrail is used for logging and tracking user activities and API calls.
Pausit Coach Authentication Integration
Pausit Coach uses Firebase Authentication with an integration to Microsoft identity platform with a multi-tenant application for Microsoft login. All users with a work or school, or personal Microsoft account can login using the Microsoft login. This includes Office 365 subscribers. The Pausit Coach Microsoft Auth application is enabled for OAuth2.0 extended with OpenID Connect. ID Tokens are enabled.
More about Microsoft OpenID Connect
About EntraID: Azure Active Directory has been renamed to Microsoft Entra ID.
Learn more about Microsoft Entra ID