Release History
Track improvements and new feature updates.
ToPlanBlock v1.2.0
Release: Major Update (Full-System Revamp & Power Tools Expansion)
This update focuses on UI modernization, performance improvements, security hardening, and advanced task‑management capabilities, delivering a smoother, safer, and more powerful experience across the entire application.
Added
- Server‑Side Pagination: Implemented SQLAlchemy‑based pagination with 10 tasks per page, including dynamic navigation controls that preserve filters and search queries.
- System Theme Detection: Introduced a “System” theme option that automatically adapts to the user’s OS Light/Dark preference via
window.matchMedia. - Bulk Action Suite: Added multi‑select checkboxes enabling batch Delete and Mark‑as‑Done operations, with backend validation scoped to the authenticated user.
- Dynamic Task Editing: Added modal‑based editing through a new
/edit/<id>route, allowing in‑place updates without page reloads. - Global Discovery Engine: Implemented real‑time search using SQLAlchemy
.ilike()for case‑insensitive filtering across all tasks. - Productivity Progress Bar: Added a dynamic completion bar that reflects progress based on the currently filtered task set.
- Markdown Export Route: Introduced a dedicated export endpoint with improved Markdown rendering.
- Custom 429 Page: Added a themed “Too Many Requests” page for rate‑limited routes.
- Toast Notification System: Replaced flash messages with unified Bootstrap toasts for consistent, non‑intrusive feedback.
- Version Page Enhancements: Added a link to the full GitHub release history and switched to caching raw API JSON for theme‑safe rendering.
Reworked
- Category Tagging System:
- Added a “last‑second save” mechanism that converts pending input into tags before form submission.
- Autocomplete is now fully case‑insensitive.
- Removed duplicate
addTag()logic and improved click‑away behavior. - Backend CSV parsing updated to match the cleaned frontend data.
- Theme & Styling Architecture:
- Replaced hard‑coded colors with Bootstrap 5.3 variables (
var(--bs-body-bg),bg-body-secondary, etc.). - Eliminated theme flickering and unified styling across all pages.
- Replaced hard‑coded colors with Bootstrap 5.3 variables (
- Version Page Caching: Switched from caching rendered HTML to caching raw GitHub API JSON, ensuring correct theme rendering per session.
- Authentication & Account Pages: Improved layout, spacing, and UX consistency; added safer delete‑account modal; enabled automatic preference saving.
- UI/UX Overhaul:
- Redesigned registration, login, account, landing, base, version, todo, error, terms, and privacy pages.
- Standardized spacing, typography, and component hierarchy for a cohesive visual identity.
- Filtering & State Persistence:
- Added All / Active / Completed tabs with persistent state across pagination.
- Search queries and filters now survive page transitions.
- Export Behavior: Updated export flow to use a “save‑as” approach for clarity and consistency.
- General Codebase Cleanup: Unified indentation and structure across templates, improving maintainability and debugging clarity.
Removed
- Legacy Flash Messages: Fully replaced by the new toast‑based notification system for consistent UI feedback.
- Hard‑Coded Theme Colors: Eliminated all static color values in favor of Bootstrap 5.3 theme variables to ensure full theme compatibility.
- Duplicate Tagging Logic: Removed redundant
addTag()implementations and outdated category‑handling scripts. - Old Version Page Cache Layer: Removed HTML‑level caching to prevent theme desynchronization and replaced it with JSON‑based caching.
- Deprecated Form Behaviors: Cleaned out unused handlers and outdated input logic that conflicted with the new AJAX‑based TODO system.
Fixed
- Category Input Loss: Resolved an issue where unconfirmed category text was lost on submit.
- Case‑Sensitive Autocomplete: Autocomplete now correctly matches categories regardless of casing.
- Open Redirect Vulnerability: Validated the
nextparameter usingurlparseto prevent malicious redirects. - Reverse Tabnabbing: Added
rel="noopener noreferrer"to all external GitHub links. - Theme Rendering Bugs: Fixed inconsistencies caused by cached HTML on the version page.
- Session Safety & Form Stability: Replaced direct
request.form[...]access with.get()to prevent KeyErrors and malformed request crashes. - Logout Security: Converted logout from GET to POST with CSRF protection.
- General Visual Issues: Fixed layout inconsistencies, spacing problems, and flickering transitions across pages.
Planned
- Profile picture being showcased before saving
- Email verification system
- Electron desktop app
- Time setting for tasks
Checked items indicate features coming in the next updates.
ToPlanBlock v1.1.1
Release: Patch (Developer Progression & Sync)
This update focuses on reinforcing the project's infrastructure through smart caching, modular file management, and a dynamic versioning system that bridges the gap between GitHub's backend and the user-facing UI.
Added
- GitHub Versioning Route: Integrated a new
/versionendpoint andversion.htmltemplate. It utilizes the GitHub REST API to fetch the latest release notes, tag names, and publication dates. - Markdown Rendering Engine: Added the
markdownlibrary to the backend, enabling the app to parse raw GitHub release text into clean, formatted HTML (supporting lists, bold text, and code blocks). - Server-Side Caching: Implemented
Flask-Cachingwith aSimpleCachestrategy. This optimizes performance by storing API responses for 60 minutes, protecting the app from GitHub rate limits. - State-Aware Change Detector: Added a JavaScript-driven monitoring system in the account settings. It tracks form modifications and triggers a custom modal warning if a user attempts to navigate away with unsaved changes.
Reworked
- File Architecture (Static Extraction): Refactored the entire project to move inline CSS and JavaScript from HTML templates into dedicated files within the
static/folder. This leverages browser caching and improves code maintainability. - Category Capture Logic: Enhanced the To-Do submission process. If a user types a category but forgets to "tag" it (via Enter or comma), the system now automatically captures that text and converts it into a category upon task creation.
- Global Footer: Updated
base.htmlto include a permanent link to the new Version page, ensuring transparency regarding app updates and project status.
Fixed
- Redundant Alerting: Resolved an issue where users were prompted twice (browser prompt + custom modal) when leaving the account page. Added a
skipChecktoggle to streamline the save/redirect process. - API Latency: Addressed potential page load delays by wrapping external API calls in a 5-second timeout and a try-except block to prevent app crashes during GitHub downtime.
Planned
- Email verification system
- Task deadline reminders and notifications
Checked items indicate features coming in the next release.
ToPlanBlock v1.1.0
Release: Minor Update (Quality of Life Reworks)
This update focuses on UX refinements, category and filtering improvements, legal compliance updates, and new user‑customizable preferences.
Added
- Preferences System: Introduced a session‑based customization module allowing users to configure sorting (Newest, Oldest, Alphabetical), enable auto‑delete for completed tasks, toggle delete confirmations, and manage all settings through a new Preferences card in
account.html.
Reworked
- Category System: Replaced the old textarea with a dynamic tag‑style input. Categories can now be added or removed using commas or the Enter key.
- Filtering Logic: Updated from OR‑based matching to strict AND‑based filtering for more precise task discovery.
- Interactive Filter UI: Categories now appear automatically in the filter panel and can be toggled with a click.
- Template Files (.github):
- Unified
pull_request_template.mdto include both progress and release sections. - Added YAML metadata to
ISSUE_TEMPLATEso templates appear correctly in GitHub’s “New Issue” page.
- Unified
- Terms & Legal Templates: Updated
privacy.htmlandterms.htmlwith Cloudinary data‑processing clauses, automated optimization notes, and third‑party handling details. - Infrastructure & Storage Pipeline:
- Production: Cloudinary now manages all media uploads for scalable, optimized storage.
- Development: Local static storage is used to avoid unnecessary cloud clutter during testing.
Fixed
- Template Rendering Issues: Corrected formatting and visibility problems across
.githubtemplates. - Media Handling & Stability:
- Added a JavaScript fallback for broken profile picture URLs.
- Implemented a custom handler for 413 “Payload Too Large” errors.
- Enforced a strict 5MB upload limit to prevent oversized uploads and improve reliability.
Planned
- Email verification
- Time tracking for tasks
Checked items indicate features coming in the next updates.
ToPlanBlock v1.0.3
Release: Patch (Cloud & Workflow)
This update transitions the application to cloud-based asset management (thanks to the issue #8 made by @AnotherBoringDev) and formalizes the contribution workflow.
Added
- Cloudinary Storage: High-performance image hosting for profile pictures.
- Repository Templates: Formal GitHub Issue and PR templates for better project management.
Reworked
- Image Processing: Replaced slow Base64 database strings with fast Cloudinary URLs.
- Memory Management: Automatic deletion of legacy cloud assets on update/delete.
Fixed
- Latency Issues: Fixed the "hanging" UI during profile updates by optimizing the upload transformation flow.
Planned
- Category system rework
- Time tracking for tasks
- Email reminders
Checked items indicate features coming in the next updates.
ToPlanBlock v1.0.2
Release: Patch (Category & Login Fixes)
This update focuses on data consistency for categories and refining the authentication flow for a smoother user experience thanks to @AnotherBoringDev's issue (#3).
Added
- Administrative Utility Scripts:
- DuplicatedMigrationFix.sql: A specialized script to merge existing duplicate category variations (like "Github" and "github") into a single, clean format and to turn all others in
UPPERCASE. - CheckUser.sql: A diagnostic tool to verify user, task and category integrity by checking the first 5 registered users.
- DuplicatedMigrationFix.sql: A specialized script to merge existing duplicate category variations (like "Github" and "github") into a single, clean format and to turn all others in
Reworked
- Automatic Category Normalization: Updated the category system to automatically convert all user inputs to
UPPERCASE. This ensures that "Work", "work", and "WORK" are all treated as the same category, preventing duplicates.
Fixed
- Category Duplication Bug: Fixed the logic flaw that allowed multiple variations of the same category name to exist, which previously cluttered the user interface.
- Authenticated UI Flow: Updated the landing page and authentication views to hide login/registration options from already logged-in users and automatically reroute them to their dashboard, preventing redundant login attempts.
Planned
- Category system rework
- Time tracking for tasks
- Email reminders
Checked items indicate features coming in the next updates.