diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 7897e2582..e0c605e40 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -41,6 +41,7 @@ This focus helps guide our project decisions as a community and what we choose t - [Naming conventions](#naming-conventions) - [Vue components](#vue-components) - [Internal linking](#internal-linking) + - [Cursor and navigation](#cursor-and-navigation) - [RTL Support](#rtl-support) - [Localization (i18n)](#localization-i18n) - [Approach](#approach) @@ -392,6 +393,18 @@ For package links, use the auto-imported `packageRoute()` utility from `app/util | `~username` | `/~:username` | `username` | | `~username-orgs` | `/~:username/orgs` | `username` | +### Cursor and navigation + +**npmx** uses `cursor: pointer` only for links to match users’ everyday experience. For all other interactive elements, including buttons, use the default cursor (_or another appropriate cursor to indicate state_). + +> [!NOTE] +> A link is any element that leads to another content (_go to another page, authorize_) +> A button is any element that operates an action (_show tooltip, open menu, "like" package, open dropdown_) +> If you're unsure which element to use - feel free to ask question in the issue or on discord + +> [!IMPORTANT] +> Always Prefer implementing navigation as real links whenever possible. This ensures they can be opened in a new tab, shared or reloaded, and so the same content is available at a stable URL + ## RTL Support We support `right-to-left` languages, we need to make sure that the UI is working correctly in both directions. diff --git a/app/components/Button/Base.vue b/app/components/Button/Base.vue index 41f227486..11f220148 100644 --- a/app/components/Button/Base.vue +++ b/app/components/Button/Base.vue @@ -28,7 +28,7 @@ defineExpose({