Skip to content

umgui - new GUI version of our current command line utility #15

@madonuko

Description

@madonuko

um is currently just a command line utility, but pragmatism is one of the core values of Ultramarine. Having a proper GUI version of um is our next step towards that.

Naming

While umgui is the codename, we need to have a human readable name for better UX.

Internal suggestions:

  • Ultramarine Control
  • Ultramarine Control Center
  • Lazurite1

We will choose "Ultramarine Control Center" for now but this could subject to change in the future.

Technical Details

We would like this GUI application separated from the command line tool. This should be created in a subdirectory named umgui/.

We're fine with either atlas or nimble.

Use the official owlkettle repo (netto is using my fork for libhelium support, which is not needed here).

Optional challenge: interop between nim and go described here. If we don't want to deal with interop, just shell out using osproc. Examples of osproc can also be seen in the aforementioned past projects.

Design

As a rule of thumb tab the app into different pages (separate page for um status, um tweaks, um paste (#10)), avoid too many dialogs.

Internationalization

Use gettext. Can either try https://github.com/Parashurama/nim-i18n or do something like libnm.nim to obtain interop for gettext from C. Place translations under umgui/po/.

Footnotes

  1. quote from roachy: "It's what the color ultramarine is made of, so it's kinda like you're making your own Ultramarine by tweaking it."

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions