{"id":179086350,"number":"5.3.0","published_at":"2026-03-13T18:58:59.034Z","licenses":"BSD-3-Clause","integrity":"sha512-38k0UA+CXnG4LfY6UE5E+/fvJc6zJiMJuYqnn0TlhRl+x9jbJ8Rz0U5m8z6YgE1wGf72Mm5MoZasbP/ddKVg6A==","status":null,"download_url":"https://registry.npmjs.org/@freecodecamp/ui/-/ui-5.3.0.tgz","registry_url":"https://www.npmjs.com/package/@freecodecamp/ui/v/5.3.0","documentation_url":null,"install_command":"npm install @freecodecamp/ui@5.3.0","immutable":null,"metadata":{"deprecated":null,"_npmUser":{"name":"huyenltnguyen","email":"kindle-shrubbery.fesev@passmail.net"},"dist":{"integrity":"sha512-38k0UA+CXnG4LfY6UE5E+/fvJc6zJiMJuYqnn0TlhRl+x9jbJ8Rz0U5m8z6YgE1wGf72Mm5MoZasbP/ddKVg6A==","shasum":"f57e69db1994e2196c098eb0f19c9b930b401350","tarball":"https://registry.npmjs.org/@freecodecamp/ui/-/ui-5.3.0.tgz","fileCount":86,"unpackedSize":6022271,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIDw/g9ZR15855c3EkQeIdWw6nAArLpKUA+AluCYK8VVhAiBhZizYPGdE0a12n8qEP2mFZDkgKCx3pbvKxhd4sQSs4A=="}]},"gitHead":null,"main":"dist/bundle.js","scripts":{"build-storybook":"storybook build","build":"pnpm clean \u0026\u0026 pnpm build:css \u0026\u0026 pnpm build:js","build:js":"cross-env NODE_ENV=production rollup -c","build:css":"npx -y tailwindcss -i ./src/base.css -o ./dist/base.css --minify","dev:js":"cross-env NODE_ENV=development rollup -c -w ","dev:css":"pnpm tailwindcss -i ./src/base.css -o ./dist/base.css --watch","develop":"npm-run-all --parallel dev:css dev:js storybook","format:eslint":"eslint . --fix","format:prettier":"prettier --write .","format":"pnpm run format:eslint \u0026\u0026 pnpm run format:prettier","lint":"prettier --check . \u0026\u0026 eslint . --max-warnings 0","start":"pnpm run develop","storybook":"storybook dev -p 6006 --no-open","storybook:theming":"pnpm run storybook --no-manager-cache","clean":"rm -rf dist/*","gen-component":"ts-node ./utils/gen-component-script","test":"jest","typecheck":"tsc"},"_npmVersion":"11.6.2","_nodeVersion":"24.13.0","_hasShrinkwrap":false,"directories":{},"engines":{"node":"\u003e=24","pnpm":"\u003e=10"},"exports":null,"browserify":null},"created_at":"2026-03-13T19:00:19.489Z","updated_at":"2026-03-13T19:00:23.019Z","purl":"pkg:npm/%40freecodecamp/ui@5.3.0","related_tag":{"name":"v5.3.0","sha":"a26ebfac069db8296db73b77ce2a25c3d066bd0a","kind":"commit","published_at":"2026-03-13T18:53:22.000Z","download_url":"https://codeload.github.com/freeCodeCamp/ui/tar.gz/v5.3.0","html_url":"https://github.com/freeCodeCamp/ui/releases/tag/v5.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/freeCodeCamp/ui@v5.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/freeCodeCamp%2Fui/tags/v5.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/freeCodeCamp%2Fui/tags/v5.3.0/manifests"},"latest":false,"version_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@freecodecamp%2Fui/versions/5.3.0","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@freecodecamp%2Fui/versions/5.3.0/codemeta","dependencies":[{"id":1953504460,"ecosystem":"npm","package_name":"@fortawesome/fontawesome-svg-core","requirements":"7.1.0","kind":"runtime","optional":false},{"id":1953504464,"ecosystem":"npm","package_name":"@fortawesome/free-solid-svg-icons","requirements":"7.1.0","kind":"runtime","optional":false},{"id":1953504465,"ecosystem":"npm","package_name":"@fortawesome/react-fontawesome","requirements":"0.2.6","kind":"runtime","optional":false},{"id":1953504471,"ecosystem":"npm","package_name":"@headlessui/react","requirements":"1.7.19","kind":"runtime","optional":false},{"id":1953504473,"ecosystem":"npm","package_name":"@radix-ui/react-tabs","requirements":"1.1.13","kind":"runtime","optional":false},{"id":1953504474,"ecosystem":"npm","package_name":"babel-plugin-prismjs","requirements":"2.1.0","kind":"runtime","optional":false},{"id":1953504477,"ecosystem":"npm","package_name":"prismjs","requirements":"1.30.0","kind":"runtime","optional":false},{"id":1953504483,"ecosystem":"npm","package_name":"sanitize-html","requirements":"2.17.0","kind":"runtime","optional":false},{"id":1953504488,"ecosystem":"npm","package_name":"@babel/core","requirements":"7.28.5","kind":"Development","optional":false},{"id":1953504496,"ecosystem":"npm","package_name":"@babel/preset-env","requirements":"7.28.5","kind":"Development","optional":false},{"id":1953504497,"ecosystem":"npm","package_name":"@babel/preset-react","requirements":"7.28.5","kind":"Development","optional":false},{"id":1953504503,"ecosystem":"npm","package_name":"@babel/preset-typescript","requirements":"7.28.5","kind":"Development","optional":false},{"id":1953504504,"ecosystem":"npm","package_name":"@eslint/js","requirements":"9.39.2","kind":"Development","optional":false},{"id":1953504505,"ecosystem":"npm","package_name":"@rollup/plugin-babel","requirements":"5.3.1","kind":"Development","optional":false},{"id":1953504513,"ecosystem":"npm","package_name":"@rollup/plugin-commonjs","requirements":"19.0.2","kind":"Development","optional":false},{"id":1953504523,"ecosystem":"npm","package_name":"@rollup/plugin-node-resolve","requirements":"13.3.0","kind":"Development","optional":false},{"id":1953504531,"ecosystem":"npm","package_name":"@rollup/plugin-terser","requirements":"0.4.4","kind":"Development","optional":false},{"id":1953504536,"ecosystem":"npm","package_name":"@rollup/plugin-typescript","requirements":"8.5.0","kind":"Development","optional":false},{"id":1953504540,"ecosystem":"npm","package_name":"@storybook/addon-a11y","requirements":"8.6.14","kind":"Development","optional":false},{"id":1953504541,"ecosystem":"npm","package_name":"@storybook/addon-actions","requirements":"8.6.14","kind":"Development","optional":false},{"id":1953504544,"ecosystem":"npm","package_name":"@storybook/addon-docs","requirements":"8.6.14","kind":"Development","optional":false},{"id":1953504547,"ecosystem":"npm","package_name":"@storybook/addon-essentials","requirements":"8.6.14","kind":"Development","optional":false},{"id":1953504551,"ecosystem":"npm","package_name":"@storybook/addon-links","requirements":"8.6.14","kind":"Development","optional":false},{"id":1953504552,"ecosystem":"npm","package_name":"@storybook/addon-styling-webpack","requirements":"1.0.1","kind":"Development","optional":false},{"id":1953504553,"ecosystem":"npm","package_name":"@storybook/addon-webpack5-compiler-babel","requirements":"3.0.6","kind":"Development","optional":false},{"id":1953504556,"ecosystem":"npm","package_name":"@storybook/blocks","requirements":"8.6.14","kind":"Development","optional":false},{"id":1953504557,"ecosystem":"npm","package_name":"@storybook/react","requirements":"8.6.14","kind":"Development","optional":false},{"id":1953504559,"ecosystem":"npm","package_name":"@storybook/react-webpack5","requirements":"8.6.14","kind":"Development","optional":false},{"id":1953504560,"ecosystem":"npm","package_name":"@testing-library/jest-dom","requirements":"6.9.1","kind":"Development","optional":false},{"id":1953504562,"ecosystem":"npm","package_name":"@testing-library/react","requirements":"12.1.5","kind":"Development","optional":false},{"id":1953504563,"ecosystem":"npm","package_name":"@testing-library/react-hooks","requirements":"8.0.1","kind":"Development","optional":false},{"id":1953504567,"ecosystem":"npm","package_name":"@testing-library/user-event","requirements":"14.6.1","kind":"Development","optional":false},{"id":1953504568,"ecosystem":"npm","package_name":"@types/jest","requirements":"29.5.14","kind":"Development","optional":false},{"id":1953504569,"ecosystem":"npm","package_name":"@types/prismjs","requirements":"1.26.5","kind":"Development","optional":false},{"id":1953504570,"ecosystem":"npm","package_name":"@types/react","requirements":"16.14.68","kind":"Development","optional":false},{"id":1953504571,"ecosystem":"npm","package_name":"@types/react-dom","requirements":"16.9.25","kind":"Development","optional":false},{"id":1953504572,"ecosystem":"npm","package_name":"@types/sanitize-html","requirements":"2.16.0","kind":"Development","optional":false},{"id":1953504574,"ecosystem":"npm","package_name":"autoprefixer","requirements":"10.4.22","kind":"Development","optional":false},{"id":1953504576,"ecosystem":"npm","package_name":"babel-loader","requirements":"8.4.1","kind":"Development","optional":false},{"id":1953504582,"ecosystem":"npm","package_name":"babel-plugin-transform-react-remove-prop-types","requirements":"0.4.24","kind":"Development","optional":false},{"id":1953504583,"ecosystem":"npm","package_name":"cross-env","requirements":"7.0.3","kind":"Development","optional":false},{"id":1953504585,"ecosystem":"npm","package_name":"css-loader","requirements":"6.11.0","kind":"Development","optional":false},{"id":1953504586,"ecosystem":"npm","package_name":"eslint","requirements":"9.39.2","kind":"Development","optional":false},{"id":1953504587,"ecosystem":"npm","package_name":"eslint-plugin-jest","requirements":"29.12.1","kind":"Development","optional":false},{"id":1953504589,"ecosystem":"npm","package_name":"eslint-plugin-jest-dom","requirements":"5.5.0","kind":"Development","optional":false},{"id":1953504593,"ecosystem":"npm","package_name":"eslint-plugin-jsx-a11y","requirements":"6.10.2","kind":"Development","optional":false},{"id":1953504594,"ecosystem":"npm","package_name":"eslint-plugin-react","requirements":"7.37.5","kind":"Development","optional":false},{"id":1953504596,"ecosystem":"npm","package_name":"eslint-plugin-react-hooks","requirements":"7.0.1","kind":"Development","optional":false},{"id":1953504602,"ecosystem":"npm","package_name":"eslint-plugin-testing-library","requirements":"7.15.4","kind":"Development","optional":false},{"id":1953504605,"ecosystem":"npm","package_name":"globals","requirements":"17.3.0","kind":"Development","optional":false},{"id":1953504607,"ecosystem":"npm","package_name":"husky","requirements":"9.1.7","kind":"Development","optional":false},{"id":1953504608,"ecosystem":"npm","package_name":"jest","requirements":"29.7.0","kind":"Development","optional":false},{"id":1953504609,"ecosystem":"npm","package_name":"jest-environment-jsdom","requirements":"29.7.0","kind":"Development","optional":false},{"id":1953504610,"ecosystem":"npm","package_name":"lint-staged","requirements":"15.5.2","kind":"Development","optional":false},{"id":1953504611,"ecosystem":"npm","package_name":"npm-run-all2","requirements":"5.0.2","kind":"Development","optional":false},{"id":1953504612,"ecosystem":"npm","package_name":"postcss","requirements":"8.5.6","kind":"Development","optional":false},{"id":1953504626,"ecosystem":"npm","package_name":"postcss-import","requirements":"14.1.0","kind":"Development","optional":false},{"id":1953504629,"ecosystem":"npm","package_name":"postcss-loader","requirements":"8.2.0","kind":"Development","optional":false},{"id":1953504630,"ecosystem":"npm","package_name":"prettier","requirements":"3.7.1","kind":"Development","optional":false},{"id":1953504631,"ecosystem":"npm","package_name":"rollup","requirements":"4.59.0","kind":"Development","optional":false},{"id":1953504632,"ecosystem":"npm","package_name":"rollup-plugin-bundle-size","requirements":"1.0.3","kind":"Development","optional":false},{"id":1953504641,"ecosystem":"npm","package_name":"rollup-plugin-postcss","requirements":"4.0.2","kind":"Development","optional":false},{"id":1953504646,"ecosystem":"npm","package_name":"storybook","requirements":"8.6.17","kind":"Development","optional":false},{"id":1953504647,"ecosystem":"npm","package_name":"style-loader","requirements":"3.3.4","kind":"Development","optional":false},{"id":1953504665,"ecosystem":"npm","package_name":"tailwindcss","requirements":"3.4.18","kind":"Development","optional":false},{"id":1953504671,"ecosystem":"npm","package_name":"ts-node","requirements":"10.9.2","kind":"Development","optional":false},{"id":1953504673,"ecosystem":"npm","package_name":"tslib","requirements":"2.8.1","kind":"Development","optional":false},{"id":1953504676,"ecosystem":"npm","package_name":"tsx","requirements":"4.20.6","kind":"Development","optional":false},{"id":1953504679,"ecosystem":"npm","package_name":"typescript","requirements":"5.9.3","kind":"Development","optional":false},{"id":1953504683,"ecosystem":"npm","package_name":"typescript-eslint","requirements":"8.54.0","kind":"Development","optional":false}],"package_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@freecodecamp%2Fui"}