Skip to content

CLI functional, UX, and layout update #72

@richbodo

Description

@richbodo

The CLI is now technically serving the new db schema, but it has a lot of unusable functions. We are going to have to enhance the functionality and change the layout of the menu to make each function usable. This is a meta-issue that addresses all of the unusable sections of the CLI, and what infrastructure we will need to fix it so I'll give the overview here, and make sub-issues for each section.

Support functions that we will need for these changes:

A) First, to make many of these features usable, we might need to push the boundaries a bit of these textual interfaces. We will probably need to understand how text interfaces allow selections of many different items from many different very large lists, without scrolling. These are common problems in point of sale systems and inventory systems that have text interfaces, so they have been solved before. We will almost surely be working with fields that can be tabbed through instead of just a text interface that scrolls away. So there is a good bit of research and planning to do, once we are familiar with all of the sub-issues.

B) We will need an query that can full-text search contact info. So we need a clever sql function that will effectively act on an index of all contact data, and/or an indexing system that will help us.

C) We are going to need an inline search capability with autocomplete to make some of these usable - for instance, searching for contacts when creating a relationship is going to require that a user type some contact data, and the full-text search shows an auto-complete list of the contacts that match that data. The user will be able to select from a the list of auto-completed items with a single keystroke, or the minimum number, and the app will autofill that field and tab to the next field.

Sections that need work, and the functionality that they need:

So we need a plan of attack here. A comprehensive strategy for upgrading the CLI and db infrastructure to accommodate the need for a more usable UX. Once we have that plan, we should tackle each of those sections that need new functionality and fixes.

Sub-issues

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions