···99</p>
10101111- [👉 Check it out](https://npmx.dev/)
1212+- [📖 About npmx](https://npmx.dev/about)
12131314## Vision
14151515-The aim of [npmx.dev](https://npmx.dev) is to provide a better browser for the npm registry – fast, modern, and accessible. We don't aim to replace the [npmjs.com](https://www.npmjs.com/) registry, just provide a better UI and DX.
1616+The aim of [npmx.dev](https://npmx.dev) is to provide a better browser for the npm registry – fast, modern, and accessible. We don't aim to replace the [npmjs.com](https://www.npmjs.com/) registry, just provide a better UI, DX, and admin experience.
16171718- **Speed first** – Layout shift, flakiness, slowness is The Worst. Fast searching, filtering, and navigation.
1819- **URL compatible** – Replace `npmjs.com` with `xnpmjs.com` or `npmx.dev` in any URL and it just works.
1920- **Simplicity** – No noise, cluttered display, or confusing UI. If in doubt: choose simplicity.
2121+- **Admin UI** – Manage your packages, teams, and organizations from the browser, powered by your local npm CLI.
20222123## Shortcuts
2224
-1
app/assets/main.css
···7676 background-color: var(--bg);
7777 color: var(--fg);
7878 line-height: 1.6;
7979- padding-bottom: var(--footer-height, 0);
8079}
81808281/* Default link styling for accessibility on dark background */
···99 "non_affiliation_disclaimer": "not affiliated with npm, Inc.",
1010 "trademark_disclaimer": "npm is a registered trademark of npm, Inc. This site is not affiliated with npm, Inc.",
1111 "footer": {
1212+ "about": "about",
1213 "docs": "docs",
1314 "source": "source",
1415 "social": "social",
···492493 "jsr": {
493494 "title": "also available on JSR",
494495 "label": "jsr"
496496+ }
497497+ },
498498+ "about": {
499499+ "title": "About",
500500+ "heading": "about",
501501+ "meta_description": "npmx is a fast, modern browser for the npm registry. A better UX/DX for exploring npm packages.",
502502+ "back_home": "back to home",
503503+ "what_we_are": {
504504+ "title": "What we are",
505505+ "better_ux_dx": "better UX/DX",
506506+ "admin_ui": "admin UI",
507507+ "description": "npmx is a {betterUxDx} for the npm package registry and tooling. We provide a fast, modern interface for exploring packages, with features like dark mode, keyboard navigation, code browsing, and connections to alternative registries like {jsr}.",
508508+ "admin_description": "We also aim to provide a better {adminUi} for managing your packages, teams, and organizations — all from the browser, powered by your local npm CLI."
509509+ },
510510+ "what_we_are_not": {
511511+ "title": "What we're not",
512512+ "not_package_manager": "Not a package manager.",
513513+ "not_registry": "Not a registry.",
514514+ "registry_description": "We don't host packages. We're just a better way to browse them.",
515515+ "package_managers_exist": "{already} {people} {building} {really} {cool} {package} {managers}.",
516516+ "words": {
517517+ "already": "There are",
518518+ "people": "already",
519519+ "building": "people",
520520+ "really": "building",
521521+ "cool": "really",
522522+ "package": "cool",
523523+ "managers": "package managers"
524524+ }
525525+ },
526526+ "vision": {
527527+ "title": "Vision",
528528+ "speed_first": "Speed first",
529529+ "speed_first_description": "Layout shift, flakiness, and slowness is The Worst. We want everything to be fast, whether searching, filtering, or navigating.",
530530+ "url_compatible": "URL compatible",
531531+ "url_compatible_description": "Replace {npmjs} with {npmx} in any URL and it should work, providing the same information with a better experience.",
532532+ "simplicity": "Simplicity",
533533+ "simplicity_description": "No noise, cluttered display, or confusing UI."
534534+ },
535535+ "open_source": {
536536+ "title": "Open source",
537537+ "description": "npmx is fully open source. Check out the {github}, join the {discord}, or follow us on {bluesky}.",
538538+ "github": "source code on GitHub",
539539+ "discord": "community on Discord",
540540+ "bluesky": "Bluesky"
495541 }
496542 },
497543 "header": {
+47
i18n/locales/fr.json
···99 "non_affiliation_disclaimer": "non affilié à npm, Inc.",
1010 "trademark_disclaimer": "npm est une marque déposée de npm, Inc. Ce site n'est pas affilié à npm, Inc.",
1111 "footer": {
1212+ "about": "à propos",
1313+ "docs": "docs",
1214 "source": "source",
1315 "social": "réseaux sociaux",
1416 "chat": "espace de discussion"
···481483 "jsr": {
482484 "title": "aussi disponible sur JSR",
483485 "label": "jsr"
486486+ }
487487+ },
488488+ "about": {
489489+ "title": "À propos",
490490+ "heading": "à propos",
491491+ "meta_description": "npmx est un navigateur rapide et moderne pour le registre npm. Une meilleure UX/DX pour explorer les paquets npm.",
492492+ "back_home": "retour à l'accueil",
493493+ "what_we_are": {
494494+ "title": "Ce que nous sommes",
495495+ "better_ux_dx": "meilleure UX/DX",
496496+ "admin_ui": "interface d'administration",
497497+ "description": "npmx est une {betterUxDx} pour le registre npm et ses outils. Nous fournissons une interface rapide et moderne pour explorer les paquets, avec des fonctionnalités comme le mode sombre, la navigation au clavier, la visualisation du code, et des connexions à des registres alternatifs comme {jsr}.",
498498+ "admin_description": "Nous visons également à fournir une meilleure {adminUi} pour gérer vos paquets, équipes et organisations — le tout depuis le navigateur, alimenté par votre CLI npm local."
499499+ },
500500+ "what_we_are_not": {
501501+ "title": "Ce que nous ne sommes pas",
502502+ "not_package_manager": "Pas un gestionnaire de paquets.",
503503+ "not_registry": "Pas un registre.",
504504+ "registry_description": "Nous n'hébergeons pas de paquets. Nous sommes juste une meilleure façon de les parcourir.",
505505+ "package_managers_exist": "{already} {people} {building} {really} {cool} {package} {managers}.",
506506+ "words": {
507507+ "already": "Il y a",
508508+ "people": "déjà",
509509+ "building": "des gens",
510510+ "really": "qui créent",
511511+ "cool": "de vraiment",
512512+ "package": "super",
513513+ "managers": "gestionnaires de paquets"
514514+ }
515515+ },
516516+ "vision": {
517517+ "title": "Vision",
518518+ "speed_first": "La vitesse d'abord",
519519+ "speed_first_description": "Les décalages de mise en page, l'instabilité et la lenteur sont le pire. Nous voulons que tout soit rapide, que ce soit la recherche, le filtrage ou la navigation.",
520520+ "url_compatible": "Compatible avec les URL",
521521+ "url_compatible_description": "Remplacez {npmjs} par {npmx} dans n'importe quelle URL et cela devrait fonctionner, fournissant les mêmes informations avec une meilleure expérience.",
522522+ "simplicity": "Simplicité",
523523+ "simplicity_description": "Pas de bruit, d'affichage encombré ou d'interface confuse."
524524+ },
525525+ "open_source": {
526526+ "title": "Open source",
527527+ "description": "npmx est entièrement open source. Consultez le {github}, rejoignez la {discord}, ou suivez-nous sur {bluesky}.",
528528+ "github": "code source sur GitHub",
529529+ "discord": "communauté sur Discord",
530530+ "bluesky": "Bluesky"
484531 }
485532 },
486533 "header": {
+47
i18n/locales/it.json
···99 "non_affiliation_disclaimer": "non affiliato con npm, Inc.",
1010 "trademark_disclaimer": "npm è un marchio registrato da npm, Inc. Questo sito non è affiliato con npm, Inc.",
1111 "footer": {
1212+ "about": "info",
1313+ "docs": "docs",
1214 "source": "codice",
1315 "social": "social",
1416 "chat": "chat"
···469471 "jsr": {
470472 "title": "disponibile anche su JSR",
471473 "label": "jsr"
474474+ }
475475+ },
476476+ "about": {
477477+ "title": "Info",
478478+ "heading": "info",
479479+ "meta_description": "npmx è un browser veloce e moderno per il registro npm. Una migliore UX/DX per esplorare i pacchetti npm.",
480480+ "back_home": "torna alla home",
481481+ "what_we_are": {
482482+ "title": "Cosa siamo",
483483+ "better_ux_dx": "migliore UX/DX",
484484+ "admin_ui": "interfaccia di amministrazione",
485485+ "description": "npmx è una {betterUxDx} per il registro npm e i suoi strumenti. Forniamo un'interfaccia veloce e moderna per esplorare i pacchetti, con funzionalità come la modalità scura, la navigazione da tastiera, la visualizzazione del codice e connessioni a registri alternativi come {jsr}.",
486486+ "admin_description": "Miriamo anche a fornire una migliore {adminUi} per gestire i tuoi pacchetti, team e organizzazioni — tutto dal browser, alimentato dalla tua CLI npm locale."
487487+ },
488488+ "what_we_are_not": {
489489+ "title": "Cosa non siamo",
490490+ "not_package_manager": "Non un gestore di pacchetti.",
491491+ "not_registry": "Non un registro.",
492492+ "registry_description": "Non ospitiamo pacchetti. Siamo solo un modo migliore per esplorarli.",
493493+ "package_managers_exist": "{already} {people} {building} {really} {cool} {package} {managers}.",
494494+ "words": {
495495+ "already": "Ci sono",
496496+ "people": "già",
497497+ "building": "persone",
498498+ "really": "che creano",
499499+ "cool": "davvero",
500500+ "package": "fantastici",
501501+ "managers": "gestori di pacchetti"
502502+ }
503503+ },
504504+ "vision": {
505505+ "title": "Visione",
506506+ "speed_first": "Velocità prima di tutto",
507507+ "speed_first_description": "I cambiamenti di layout, l'instabilità e la lentezza sono il peggio. Vogliamo che tutto sia veloce, che si tratti di ricerca, filtro o navigazione.",
508508+ "url_compatible": "Compatibile con gli URL",
509509+ "url_compatible_description": "Sostituisci {npmjs} con {npmx} in qualsiasi URL e dovrebbe funzionare, fornendo le stesse informazioni con un'esperienza migliore.",
510510+ "simplicity": "Semplicità",
511511+ "simplicity_description": "Niente rumore, display disordinato o interfaccia confusa."
512512+ },
513513+ "open_source": {
514514+ "title": "Open source",
515515+ "description": "npmx è completamente open source. Dai un'occhiata al {github}, unisciti alla {discord}, o seguici su {bluesky}.",
516516+ "github": "codice sorgente su GitHub",
517517+ "discord": "community su Discord",
518518+ "bluesky": "Bluesky"
472519 }
473520 },
474521 "header": {