We need to work out exactly how we want the validator to work in terms of input/output.
Detailed View
The UI for the web application will use the I/O from the CLI application as its basis, and won't extend much beyond that, other than to format it into a particular window
The CLI must take in a directory as input (along with a set of optional flags), then output a message indicating whether the directory constitutes a valid psych-DS dataset (along with descriptions of whatever errors/warnings the dataset produced during validation)
The CLI should have some sense of priority/flow, only outputting certain errors if some errors are fully downstream of others.
The GUI for the web application should:
be minimal, clear, and intuitive.
be undecorated, but clean and sleek.
map all option flags from the CLI to checkboxes with informative tooltips.
use restrictive file dialogs to ensure valid input directories
display all CLI output in a scrollable frame, perhaps with hyperlinked vocabulary that would not have been otherwise present in the CLI format. Perhaps different issues can be encapsulated in rounded boxes (think iphone text messages) and listed vertically.
The CLI option flags should be as follows:
--verbose: display full text of messages rather than clipping them at a max length. May not be useful for web app.
--showWarnings: displays all warning issues rather than just error issues.
--schema: select specific version of psych-DS schema to validate against. (use dropdown for web app)
The web app should include, at the least, some kind of link to the documentation/tutorial, potentially also some kind of integration of instructions into the display
TL;DR
We need to work out exactly how we want the validator to work in terms of input/output.
Detailed View
This issue naturally couples with issue #4