LearnLeaf Organizer

Team Name

Excaliber

Timeline

Fall 2024 – Spring 2025

Students

  • Emmanuel Asomugha – Computer Science
  • Ian Kelly – Computer Science
  • Elliot Mai – Software Engineering
  • Benjamin Niccum – Software Engineering
  • Nicholas Pratt – Computer Science

Abstract

LearnLeaf Organizer is a task and project management system designed to help students streamline academic planning and organization. The system consists of a Progressive Web Application (PWA) and an Android Mobile Application, both of which provide a unified interface for managing tasks, projects, and subjects. Users can create, edit, and organize tasks within a structured system that includes calendar views, automated reminders, and an archive for completed items.

The platform supports mass task import through integrated spreadsheets and features Learning Management System (LMS) connectivity, allowing automatic synchronization of assignments. Automated email notifications ensure users stay informed of upcoming deadlines. Data is stored and synchronized in real-time using Firebase, and the PWA maintains offline functionality by leveraging a locally cached database.

The system architecture is built on a web-based frontend, a mobile app, and a Firebase backend. Web users benefit from PWA capabilities, enabling installation and offline access regardless of operating system, while mobile users benefit from a dedicated Android app with native navigation and optimized performance. By combining real-time synchronization, offline usability, LMS integration and notifications, LearnLeaf Organizer provides an efficient and accessible solution for academic planning.

Background

LearnLeaf Organizer provides essential features like assignment management, calendar integration, and project tracking. However, its current limitations present both challenges and opportunities for enhancement:

  • Outdated and Inefficient User Interface: The current web UI is visually outdated and somewhat inconsistent, making navigation less intuitive. Enhancing the web version with a modern, user-friendly design will greatly improve usability. After improving the web UI, a mobile app will be developed, allowing students to manage their tasks on the go, providing flexibility and convenience that aligns with modern user expectations.
  • No Cross-Device Access and Cloud Sync: The application currently operates without cloud synchronization, meaning students can only access their tasks on a single device. Implementing cloud sync will enable seamless access to tasks and assignments across both web and mobile platforms, allowing students to transition between devices with ease and ensuring their data is always up to date.
  • Limited Notification Customization: LearnLeaf Organizer’s notification system offers limited options for customizing reminders. Students cannot adjust the timing or choose their preferred notification method (e.g., email, push notifications). By expanding these options, the tool will allow students to better manage their deadlines and prevent missed tasks.
  • Basic Analytics for Task Management: The system provides only basic tracking for assignment progress, lacking advanced insights into study patterns or time management. Adding more detailed analytics will give students valuable information about their work habits and allow them to optimize their productivity and performance.
  • No Integration with External Tools: The application does not currently integrate with external platforms like Canvas, the learning management system used by many schools. This forces students to manually enter assignments, increasing the risk of errors. By integrating LearnLeaf Organizer with Canvas, students will benefit from automatic assignment syncing, saving time and ensuring that their tasks are always accurate and up to date.
  • Security Vulnerabilities: The current system has security vulnerabilities related to user authentication and data protection. These issues expose student data to potential risks. The project will address these concerns by implementing stronger encryption, secure login mechanisms, and improved access control. This will ensure that user data is securely stored and transmitted, protecting sensitive information from unauthorized access or breaches.

By addressing these challenges, LearnLeaf Organizer will become a more robust, secure, and versatile tool for students. Upgrading the web UI, adding cloud synchronization, improving notifications, developing a mobile app, providing advanced analytics, integrating with Canvas, and resolving security vulnerabilities will significantly enhance the user experience, making the application a more valuable and competitive educational tool.

Project Requirements

Task Tracking: Users can track the progress of tasks in various forms, with visual indicators showing task status, deadlines, and completion rates.

Project Management: Enables users to create, edit, delete, and organize projects. Each project can contain multiple tasks, have multiple subjects associated, and users can dynamically reorder them as needed.

Project Management: Enables users to create, edit, delete, and organize subjects. Each subject can contain multiple tasks, and users can dynamically reorder them as needed.

Notification System: Sends email and in-app notifications to remind users of upcoming deadlines and task status updates. Users can set daily, weekly, and urgent reminders

Mobile-First Design: The platform is responsive and optimized for mobile devices, ensuring usability on smartphones and tablets.

Authentication: Both email login and Google SSO ensure secure access to the platform.

Data Synchronization: The organizer synchronizes data across devices, ensuring users have access to updated information from anywhere.

Progressive Web App (PWA): Supports offline functionality, allowing users to access and manage their tasks even without an active internet connection. It can also be installed on home screens for easier access.

Android App: Native Android app which supports offline functionality, allowing users to access and manage their tasks even without an active internet connection. The app is downloadable from the Play Store.

LMS Integration: The platform allows the user to easily fetch task and subject data directly from their LMS. The data is automatically updated on a regular interval.

Design Constraints

Accessibility:
LearnLeaf Organizer enforces Web Content Accessibility Guidelines (WCAG 2.1) across the UI. This includes using accessible font sizes, ensuring high color contrast for readability, keyboard-navigable forms, and screen reader compatibility. These constraints ensure that students and professionals with disabilities can fully interact with all features.
Aesthetics:
The system emphasizes clean visual design with consistent color schemes and modern UI patterns. Aesthetic choices such as button spacing, project theming, and mobile-responsive layouts contribute to the visual clarity and quality of the app. All elements must meet design consistency and contrast standards.
Ergonomics:
Although LearnLeaf Organizer is a digital application, ergonomic principles are applied to ensure comfort and efficiency. Features like mobile-friendly button sizing, minimal navigation steps, and intuitive layout structures make interaction more comfortable, especially during extended use.
Functionality:
Functional constraints ensure every feature operates correctly under expected conditions. Real-time updates, drag-and-drop task organization, and Firebase synchronization are required. These ensure seamless academic planning with minimal friction between user input and system response.
Interoperability:
The system is designed for cross-platform compatibility. It works in all major browsers, uses Firebase for cloud syncing, and supports PWA standards for installation. These constraints prevent dependence on platform-specific libraries, promoting compatibility in mixed device environments.
Legal Considerations:
Legal constraints include compliance with the CAN-SPAM Act for emails, secure data transmission via HTTPS, and secure login practices guided by OWASP standards. Users must agree to a Terms of Service, and personal data must be protected to prevent legal or regulatory violations.
Maintainability:
LearnLeaf Organizer follows structured development practices including Git-based version control, code modularity, and documentation standards. These constraints help the system remain maintainable over time, making it easier to fix bugs, add features, and scale.
Safety & Welfare / Public Health:
Digital safety is ensured through secure authentication, email security protocols, and encrypted data transmission. Though there are no physical safety risks, these protections safeguard users from cyber threats and privacy breaches.
Schedule:
Development is guided by milestone planning aligned with academic calendar cycles. Core features like task scheduling and reminders are prioritized for early delivery, ensuring the system is usable during active semesters and project timelines are realistic.
Social/Cultural:
Cultural sensitivity is addressed through neutral design elements and time/date localization. LearnLeaf Organizer supports both U.S. and international formats, ensuring usability for a diverse, global student base.
Standards:
The system adheres to WCAG 2.1 for accessibility, OWASP for security, Firebase development best practices, and HTML5/CSS3 web standards. Following these ensures the system is stable, secure, and widely compatible.
Sustainability:
Though primarily a digital product, LearnLeaf Organizer includes constraints that promote sustainability through performance optimization. Techniques like lazy loading, efficient syncing, and reduced server overhead help minimize energy use and data transfer.
Usability:
Usability is a core goal. Constraints ensure intuitive navigation, consistent UI behavior, user-friendly forms, and visual feedback for user actions. These make the platform easy to learn and efficient to use, encouraging daily adoption for task management.

Engineering Standards

Authentication & Encryption / Security Standards:
LearnLeaf Organizer uses SSL/TLS (HTTPS) for all communication to ensure secure data transmission. It follows OWASP guidelines for secure authentication, including CSRF protection, CAPTCHA, and password masking. OAuth 2.0 and OpenID Connect are supported for secure authentication protocols. Additionally, the system implements SPF and DKIM to ensure email authenticity, and complies with the CAN-SPAM Act to handle legal aspects of email communication.
NIST Digital Identity Guidelines:
The project applies NIST guidelines for digital identity and secure password handling. Features such as password strength indicators, secure reset flows, and brute force protections align with these federal standards for identity verification and security.
WCAG 2.1:
LearnLeaf Organizer follows WCAG 2.1 standards for accessibility. These standards ensure proper color contrast, keyboard navigation support, and screen reader compatibility. This is critical for providing an inclusive experience, particularly for users with visual or motor impairments.
GDPR / CCPA Compliance:
The system is designed in compliance with GDPR and CCPA data privacy regulations. This includes secure handling of personal data, support for user data deletion, and clear privacy messaging during sign-up. These standards ensure that user information is handled legally and ethically.
Programming / Web Development Standards:
The application is built using modern web standards including HTML5, CSS3, and JavaScript (ES6+). It supports Progressive Web App features using the W3C Web App Manifest and Service Worker APIs. Firebase API standards govern data handling and synchronization. The app also adheres to performance and optimization practices as outlined by Google Lighthouse benchmarks.

System Overview

The LearnLeaf Organizer has a straightforward three-layer design consisting of a Frontend layer, a Backend layer, and a Database layer. Since the LearnLeaf Organizer will be available as both a website and a mobile app, the front end and back end needs to have two branches which are very similar but still distinct.

The Web Frontend consists of three main parts: Pages, Navigation, and Firebase Tools. The main function of the front-end is to present database information to the user in a usable form. It also acts as a way for the user to make modifications to and requests of the database which will be handled by the back-end.

The Web backend consists of three main parts: Pages, IndexedDB (local cache) and the LearnLeaf Organizer tools. The purpose of the back-end is to facilitate communication and data transfer between the user and the database in a way that is consistent with database best practices, along with maintaining state consistency between the remote database and the local database cache.

The Mobile Frontend consists of 3 main parts: Pages, Navigation, and Firebase tools. The purpose of the mobile frontend is to present information from the database in an easy-to-read and useful format. It also acts as a way for the user to make modifications to and requests of the database which will be handled by the backend.

The Mobile Backend is comprised of two main parts: Pages and the LearnLeaf Tools, which manage actions taken by the distinct pages in the Java code base, and act as an interface with Firebase’s native database management tools. The purpose of the subsystem is to handle communication between the Firestore database and the user interface in a way that is consistent with database best practices. The Database is comprised of 4 main parts, user data, task data, project data, and subject data. The purpose of the database is to securely store each user’s data, maintain data integrity, provide basic access control, maintain referential integrity, and respond to user queries.

Results

The LearnLeaf Organizer prototype was tested across its core modules to ensure functionality, consistency, and usability. In the task management module, users were able to add, edit, and filter tasks based on status, priority, and due dates. Input validation was enforced to ensure correct data formats during these operations. The batch import feature successfully allowed users to import tasks using a structured input table, with validation rules applied to status, priority, and date fields.

Calendar synchronization was achieved through integration with Canvas LMS, using iCal links to import events on a consistent schedule. The projects and subjects module functioned as intended, correctly linking tasks to their respective groups and dynamically updating donut charts in response to changes in task status. User preferences, including time and date formats, were saved and consistently applied across sessions, providing a personalized experience.

The archive system allowed users to store and retrieve completed tasks, subjects, and projects through a collapsible interface, enhancing organization and long-term access to past work. Finally, the system demonstrated strong cross-platform compatibility, operating smoothly as both a browser-based progressive web app and a native Android application. Both platforms maintained real-time data synchronization and consistent functionality throughout testing.

Future Work

Future development plans for LearnLeaf Organizer aim to significantly expand its functionality and deliver deeper value to users. A major focus will be the introduction of enhanced analytics, offering insights into study patterns and productivity trends. This may include visual reports on task completion rates, time spent per subject, and overall workload distribution. A dedicated statistics page will centralize these insights, helping users make informed decisions about how to manage their academic responsibilities more effectively.

Additional learning management system integrations are also planned, extending beyond the current Canvas iCal support to platforms like Blackboard, Moodle, and Google Classroom. These integrations will allow users to automatically sync assignments, events, and course updates, reducing the need for manual entry and ensuring schedules remain current.

To support collaboration and group work, a shared tasks feature is planned, enabling multiple users to contribute to and manage the same task or project. This will be particularly useful for study groups or team assignments. The system will also support recurring tasks, allowing users to set daily, weekly, or custom repeat intervals for tasks that happen regularly, such as assignments or reminders.

Subtasks will add another layer of organization by allowing users to break down larger tasks into smaller, manageable components. This supports better tracking of complex workflows and ensures nothing falls through the cracks. Finally, the team is exploring the use of machine learning to power personalized recommendations, such as optimal study times, task prioritization, or identifying patterns in user behavior that can inform future planning. These improvements aim to make LearnLeaf Organizer a smarter, more collaborative, and data-driven productivity tool.

Project Files

Project Charter
System Requirements Specification
Architectural Design Specification
Detailed Design Specification
Poster

Steven McDermott