Skip to content

Conversation

@unfunco
Copy link
Owner

@unfunco unfunco commented Nov 16, 2025

This adds the functionality to add and edit todos from within the TUI, where previously it was only possible to add todos via the CLI. The add/edit form is not perfect, visually it still needs some work and the list selector feels clumsy.

This adds the functionality to add and edit todos from within the TUI,
where previously it was only possible to add todos via the CLI.
The add/edit form is not perfect, visually it still needs some work and
the list selector feels clumsy.
@unfunco unfunco requested a review from Copilot November 16, 2025 09:31
@unfunco unfunco self-assigned this Nov 16, 2025
@unfunco unfunco added the adds a feature 💡 Improvements or additions. label Nov 16, 2025
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds comprehensive edit and add functionality to the TUI, allowing users to create and modify todos directly within the interactive interface. Previously, todos could only be added via the CLI.

Key changes include:

  • Addition of form-based UI for adding and editing todos with title, description, and list selection
  • Refactoring of storage layer into an interface with improved file handling (atomic writes, proper permissions)
  • Introduction of a list definitions package for better abstraction
  • Enhanced test coverage for the new functionality

Reviewed Changes

Copilot reviewed 14 out of 16 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
internal/version/version.go Updated semantic version to development marker
internal/tui/tui_test.go Added test helper, fixed spelling, and added comprehensive tests for form functionality
internal/tui/tui.go Implemented form mode, field navigation, and rendering for add/edit functionality
internal/storage/storage.go Refactored into interface definition for storage abstraction
internal/storage/file.go New file-backed storage implementation with atomic writes and secure permissions
internal/storage/file_test.go Tests for file storage atomicity and permissions
internal/model/todo.go Added JSON tags and renamed Toggle method to ToggleCompleted
internal/list/list.go New package defining list metadata and identifiers
internal/cmd/t.go Updated command to use new storage interface and added title validation
internal/cmd/t_test.go Tests for title validation logic
go.mod, go.sum Updated dependencies and moved bubbles/bubbletea to direct dependencies
README.md Enhanced documentation with installation instructions and clearer examples
.gitignore Added Claude settings to ignore list
.github/workflows/*.yaml Restructured CI/PR workflows

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@unfunco unfunco merged commit acaa44f into main Nov 16, 2025
1 check passed
@unfunco unfunco deleted the feat/add-edit branch November 16, 2025 09:40
@github-actions github-actions bot mentioned this pull request Nov 16, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

adds a feature 💡 Improvements or additions.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants