discourse/plugins/discourse-gamification
Sérgio Saquetim 1654d529ef
DEV: Consolidate reusable components into ui-kit (#38703)
Consolidates reusable UI primitives from `app/components/`,
`app/helpers/`, and `app/modifiers/` into a dedicated `app/ui-kit/`
directory under a unified `d-` prefix naming convention. This gives
Discourse a single, discoverable home for the building-block parts of
the UI: generic primitives (buttons, inputs, modals, selects), layout
pieces (page headers, breadcrumbs, stat tiles), and lightly
Discourse-flavored display widgets (user info, badges, cook-text).

Helpers and modifiers live in `app/ui-kit/helpers/` and
`app/ui-kit/modifiers/` respectively.

### Backward compatibility

No existing imports or template invocations need to change. Old import
paths (e.g. `discourse/components/d-button`, `discourse/helpers/d-icon`)
keep working via runtime AMD `loaderShim` entries in
`app/ui-kit-shims.js`, so plugins and themes need zero changes.

An ESLint rule (shipped via `@discourse/lint-configs` 2.46.0) auto-fixes
imports in the codebase to use the new `discourse/ui-kit/...` paths.
Existing consumer files in `app/`, `admin/`, `plugins/`, and `frontend/`
have been re-imported through that rule in a single sweep, so the
codebase stays consistent.

### Tests

Test module identifiers and file paths now match the ui-kit directory
layout (`tests/integration/ui-kit/...`, `module("Integration | ui-kit |
...")`), keeping the test tree symmetric with `app/ui-kit/`.
2026-05-11 18:07:36 -03:00
..
admin/assets/javascripts DEV: Consolidate reusable components into ui-kit (#38703) 2026-05-11 18:07:36 -03:00
app FEATURE: Per-leaderboard scorable weights and category filters (#39062) 2026-04-23 11:23:01 -03:00
assets DEV: Consolidate reusable components into ui-kit (#38703) 2026-05-11 18:07:36 -03:00
config I18N: Update translations (#39576) 2026-04-30 11:50:45 +02:00
db FEATURE: Per-leaderboard scorable weights and category filters (#39062) 2026-04-23 11:23:01 -03:00
jobs FEATURE: Per-leaderboard scorable weights and category filters (#39062) 2026-04-23 11:23:01 -03:00
lib FEATURE: Per-leaderboard scorable weights and category filters (#39062) 2026-04-23 11:23:01 -03:00
spec FEATURE: Per-leaderboard scorable weights and category filters (#39062) 2026-04-23 11:23:01 -03:00
test/javascripts FEATURE: Per-leaderboard scorable weights and category filters (#39062) 2026-04-23 11:23:01 -03:00
package.json DEV: Add a script for generating external types in discourse-types (#37095) 2026-03-09 20:37:43 +01:00
plugin.rb FEATURE: Per-leaderboard scorable weights and category filters (#39062) 2026-04-23 11:23:01 -03:00
README.md
tsconfig.json DEV: Add a script for generating external types in discourse-types (#37095) 2026-03-09 20:37:43 +01:00

Discourse Gamification Plugin

User Card

Screen Shot 2022-03-18 at 9 33 24 AM

User Metadata

Screen Shot 2022-03-18 at 10 48 25 AM

Directory

Screen Shot 2022-03-18 at 10 48 54 AM