-
-
Notifications
You must be signed in to change notification settings - Fork 173
Design Goals
Wakapi's targeted user audience are developers. That is, we can well expect a certain level of technical expertise. While we want to provide good and straightforward UX, not every little aspect must be designed to be foolproof. It is acceptable to ask users to edit a config file and put an API key to accomplish the initial setup or to ask them to configure fine-grained permissions. Referencing GitHub issues for further explanation on the UI is fine. Provided features and settings may, if sensible, be more low-level compared to the average SaaS product.
We're often asked why feature X supported by WakaTime is not implemented in Wakapi. It's by design. We don't have the capacity to build a fully-fledged WakaTime replica and also don't want to. We'd like to keep the freedom to take our own design decisions here and there, even if they fundamentally deviate from WakaTime, e.g. see here. This is related to the next point below.
We try to remain as minimalist as possible, while still providing a good user experience.
On the one hand, this is about features: we are quite strict when triaging what to implement and what not. A new feature may only be added if it provides "sufficiently" more benefit to a non-negligible number of users.
On the other hand, on a more technical level, this also relates to code design and external libraries. Only pull in as a dependency what is really needed. Stick to using the standard library as much as possible and avoid to over-engineer things.
Wakapi is built by people who have fun what they're doing. Don't raise your expectations too high. Let's build a friendly and welcoming community around Wakapi and not put any pressure on anyone! ✌️
More to come ...