You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Milestone: Milestone 5: Infrastructure & Tools Category: 5.2 Admin Panel (Web) Task: Develop a web-based admin dashboard using Blazor for managing users and application data.
Description
This task involves creating a Blazor-based admin panel for managing users and other application data. The admin panel should provide functionality to view, edit, delete, and create users, as well as manage other aspects of the application (e.g., meal logs, weight tracking).
Subtasks:
Create a Blazor web application project for the admin panel
Implement a user management page:
View all users
Create new users
Edit user details (e.g., username, email, password)
Delete users
Implement a meal management page:
View all logged meals
Edit or delete meals
Add new meal entries manually
Implement a weight tracking page:
View all logged weight entries
Edit or delete weight entries
Add new weight entries manually
Implement role-based access control (RBAC) to manage different user roles (Admin, Coach, User):
Admin: Full access to all data
Coach: Limited access to user data, meal logs, and weight tracking
User: Personal data access (e.g., meals, weight)
Integrate the dashboard with the backend API to retrieve and update user and data information
Add authentication and authorization to the admin panel (JWT, login/logout)
Implement a responsive design for the admin panel to ensure usability on various devices (desktop, tablet, mobile)
Implement search and filtering options for users, meals, and weight logs
Implement pagination for long lists of users, meals, and weight logs
Implement data validation on forms (e.g., for creating/editing users or meal entries)
Test the admin dashboard for security vulnerabilities (e.g., unauthorized access, XSS)
Document usage of the admin panel in the README
Technical Considerations:
Use Blazor WebAssembly or Blazor Server, depending on the project requirements
Implement JWT-based authentication for secure login/logout
Use a UI library like Bootstrap or Telerik for Blazor to create responsive and modern user interfaces
Ensure role-based access control (RBAC) is properly configured for different user types
Use Entity Framework Core or another ORM for database communication in the Blazor application
Acceptance Criteria:
The web dashboard is accessible and responsive on various devices
The dashboard can manage users, meals, and weight tracking data
Authentication and authorization are implemented and tested
Role-based access control (Admin, Coach, User) is functional
The admin panel correctly communicates with the backend API
The dashboard UI is user-friendly and intuitive
Documentation for the admin panel is added to the README file
Milestone: Milestone 5: Infrastructure & Tools
Category: 5.2 Admin Panel (Web)
Task: Develop a web-based admin dashboard using Blazor for managing users and application data.
Description
This task involves creating a Blazor-based admin panel for managing users and other application data. The admin panel should provide functionality to view, edit, delete, and create users, as well as manage other aspects of the application (e.g., meal logs, weight tracking).
Subtasks:
Technical Considerations:
Acceptance Criteria: