Skip to content

Project Goals

Jackson Huff edited this page Apr 19, 2023 · 2 revisions

The Clipboard Project aims to fulfill the following goals in order of descending importance.

User Experience

CB must ensure an ideal user experience for everyone. Within this goal, the user experience of inexperienced users takes priority over that of advanced users.

Compatibility

CB must not depend on external libraries or specific processor architectures or operating systems. CB must only support those systems which support C++20.

Simplicity

CB must be made as simple as possible, but not simpler.

Code Size

CB must ensure a small binary size so that it can be easily installed, moved, and executed under conditions of low system resources or slow network connections.

Pragmatism over Correctness

CB must act as users expect a clipboard to act, but the method to accomplish this may be more pragmatic than correct.

Speed

CB must not take more than a few milliseconds to execute any action, excluding time spent processing files. This must be measured using the slowest processor that could be reasonably expected to potentially run CB.