MyDay là một ứng dụng di động (React Native + Expo) giúp bạn tổ chức lịch làm việc, phân bổ thời gian tập trung và theo dõi các hoạt động cá nhân trong ngày.
- Bảng điều khiển tổng quan: hiển thị số lượng lịch, sự kiện sắp diễn ra và tổng thời gian tập trung.
- Quản lý lịch trình: tạo, chỉnh sửa, hoàn thành hoặc xóa các sự kiện chỉ với một vài thao tác.
- Nhóm theo ngày: các sự kiện được sắp xếp và nhóm theo ngày giúp bạn dễ dàng theo dõi.
- Lưu trữ cục bộ: dữ liệu được lưu trong
AsyncStorage, đảm bảo tồn tại sau khi đóng ứng dụng.
- Cài đặt phụ thuộc
npm install- Chạy ứng dụng bằng Expo
npm run startSau khi Expo khởi chạy, quét mã QR để mở ứng dụng trên thiết bị di động hoặc sử dụng trình giả lập Android/iOS.
├── App.js
├── app.json
├── assets
│ └── README.md
├── package.json
├── src
│ ├── components
│ │ ├── EventCard.js
│ │ ├── EventForm.js
│ │ └── MetricCard.js
│ ├── context
│ │ └── ScheduleContext.js
│ ├── hooks
│ │ └── useSchedule.js
│ ├── screens
│ │ └── DashboardScreen.js
│ └── utils
│ └── schedule.js
ScheduleContextvà hookuseSchedulecung cấp trạng thái tập trung cho toàn bộ ứng dụng.- Các hàm tiện ích trong
src/utils/schedule.jsgiúp quản lý dữ liệu sự kiện và format thời gian. - Có thể tích hợp thêm đồng bộ hóa đám mây hoặc lịch ngoài (Google, Outlook) bằng cách mở rộng hook
useSchedule.
- Sử dụng ESLint để đảm bảo chất lượng mã nguồn:
npm run lintDự án được cung cấp cho mục đích học tập và thử nghiệm.