This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.
Currently, two official plugins are available:
- @vitejs/plugin-react uses Babel for Fast Refresh
- @vitejs/plugin-react-swc uses SWC for Fast Refresh
This application is a robust Student Management System built with modern web technologies and cloud services. It provides a user-friendly interface for managing student information efficiently and securely.
- Student Registration: Add new students to the system with a comprehensive form.
- Data Collection: Capture essential student details including Student ID, First Name, Last Name, Email, and Date of Birth.
- Form Validation: Implement rigorous data validation to ensure accuracy and completeness of student information.
- User Authentication: Secure access to the system using AWS Amplify authentication services.
- Responsive Design: Utilize Material-UI for a clean, modern, and mobile-friendly user interface.
- Date Handling: Incorporate an intuitive date picker for selecting student's date of birth.
- Loading States: Provide visual feedback during form submission and data processing.
- Error Handling: Display clear error messages for form validation and submission issues.
- Student Deletion: User can delete a student entry from the system.
- React: Core library for building the user interface
- Material-UI (MUI): UI framework for responsive and attractive design
- Formik: Form state management and submission
- Yup: Schema validation for form inputs
- Day.js: Date manipulation and formatting
- UUID Generator: Generation of unique identifiers
- AWS Amplify: Core service for backend functionality
- Amazon Cognito: User authentication and authorization
- AWS AppSync: GraphQL APIs and real-time data synchronization
- Amazon DynamoDB: NoSQL database for data storage
- Amazon S3: File storage service
- ESLint: Code quality and style checking
- Prettier: Code formatting
- Webpack: Module bundling
- Babel: JavaScript compilation
The application is structured around a main form component (AddStudentForm) which handles the creation of new student records. This component integrates various Material-UI elements, form validation logic, and state management to provide a seamless user experience.
- User authenticates using AWS Amplify services
- Upon successful login, user can access the student management interface
- User can add new students by filling out the registration form
- Form inputs are validated in real-time
- On submission, data is processed and stored in the backend
- User receives feedback on successful submission or any errors encountered