Files
sanasto-wiki/TODO.md
2026-01-23 13:49:56 +01:00

2.8 KiB

Sanasto Wiki TODO List

This document outlines planned improvements, bug fixes, and new features for the Sanasto Wiki application.


High Priority

Bugs

  • Search input loses focus on filter change: This issue has been resolved. The search input now retains focus when filters are applied.
  • Mismatched enum syntax in models: This issue has been resolved by correcting the enum declarations in SuggestedMeaning.rb and User.rb to use the updated Rails 8 syntax. All tests now pass.
  • [BUG] Mobile browser access is blocked by :modern browser requirement in ApplicationController: This issue has been resolved by removing the allow_browser versions: :modern line from ApplicationController.

Improvements

  • Replace hardcoded LANGUAGE_COLUMNS with dynamic query: The Entry model now dynamically fetches language codes via SupportedLanguage.valid_codes and caches them, removing the hardcoded array. This task is completed.

Medium Priority

New Features

  • Add user authentication: The application currently lacks user authentication, which is a critical security vulnerability. Implementing a robust authentication system will protect sensitive data and ensure only authorized users can make changes.
  • Implement user roles and permissions: The README.md defines user roles (contributor, reviewer, admin), but the application does not yet enforce these roles. Implementing a permissions system will ensure that users can only perform actions appropriate for their role.
  • Add create, edit, update, and destroy actions to EntriesController: The EntriesController currently lacks the full set of CRUD actions needed for managing entries.
  • Add views for creating and editing entries: Corresponding views for entry creation and editing are missing.
  • Add pages for user profiles, admin dashboard, and suggested meanings queue: Essential UI components for user management and content review are absent.

Refactoring

  • Improve fixture quality: The test fixtures have been refactored to resolve conflicts and foreign key violations, ensuring tests pass reliably. This task is completed.

Low Priority

New Features

  • Add a download button for entries: This feature has been implemented in the EntriesController#download action and is accessible from the UI. This task is completed.

Improvements

  • Enhance UI/UX: While functional, the user interface could be improved to be more intuitive and visually appealing. A design review and subsequent enhancements would improve the overall user experience.
  • Add tests for controllers and views: The current test suite only covers the models. To ensure the reliability of the application, tests for the controllers and views should also be added.