Designing a Lightweight Reminder System with Java 17, SpringBoot 3, Vue 3 & Uniapp
The article outlines the motivation, phased planning, architecture, task breakdown, implementation, and testing of a compact reminder platform built with Java 17/SpringBoot 3, Vue 3, Uniapp, MyBatisPlus, Redis, and RocketMQ, detailing each functional module and UI screen.
Background
Because couriers leave packages at parcel stations and provide pickup codes that users often forget, or they do not delete the SMS after pickup, users cannot confirm collection. This motivated a small system to record such information and issue reminders.
Task Plan
Phase 1 Align
Goal: Define business boundaries and technical metrics.
Core business processes: event reminders, group collaboration, agent commissions.
Technology stack: Java 17/21 + Spring Boot 3.x, Vue 3 + UniApp.
Document: event_reminder.md.
Phase 2 Architect
Goal: Complete architecture and database design.
Database design
User and permission (RBAC + data permission).
Reminder events (support repeat rules: weekly, monthly, yearly).
Message notifications (template messages, SMS, MQ).
Agent system (distribution relationships, commission records).
API definition for mobile and admin interfaces.
Architecture selection: integrate MyBatis‑Plus, Redis, RocketMQ (optional switch).
Phase 3 Atomize
Goal: Decompose development tasks.
Backend modules: auth, sys, reminder, agent.
Frontend pages
Mobile: calendar view, event details, personal center.
Admin: agent management, operation configuration.
Document: TASK_event_reminder.md.
Phase 4 Implement
Goal: Code implementation.
Backend development
Framework setup (Spring Boot + MyBatis‑Plus + Redis).
Permission system (data permission).
Business features (reminders, groups, agents).
Message module integration (RocketMQ + WeChat/SMS).
Mobile development (UniApp)
Framework setup (Vue 3 + Pinia).
Calendar component and view implementation.
WeChat subscription message integration.
Admin development (Web)
Agent hierarchy management.
Data reporting.
Phase 5 Assess
Goal: Test and acceptance.
Functional testing: reminder timeliness, permission isolation.
Performance testing: MQ peak‑shaving and valley‑filling verification.
Deployment and release.
Features
Registration
User registration interface.
Forgot Password
Password recovery interface.
Login
Authentication interface.
Home (Reminder List)
Banner carousel, search box, reminder list with create‑reminder entry.
Create Reminder
Users can create a reminder, choose WeChat subscription messages, SMS, or both. Groups can be created so members receive the reminder (SMS‑based; WeChat subscription may require authorization).
New Group
Create a new group and add members.
Invite to Group
Invite friends via the right‑hand button or dissolve the group with the bottom button.
Diary
View diary list and create new diary entries (UI under development).
My
Top section shows basic user information; bottom section provides history reminders, my groups, and logout.
History Reminders
View past reminder records and query by time or content.
Status operations: click a reminder to change status, view details, mark as completed, or delete.
My Groups
Display list of groups; creation steps shown earlier.
Logout
Log out of the system.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
Coder Trainee
Experienced in Java and Python, we share and learn together. For submissions or collaborations, DM us.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
