{"id":14971164,"url":"https://github.com/jd1378/nuxt-obfuscator","last_synced_at":"2025-10-26T14:31:10.168Z","repository":{"id":211391095,"uuid":"729001544","full_name":"jd1378/nuxt-obfuscator","owner":"jd1378","description":"a css class mangler/obfuscator for nuxt","archived":false,"fork":false,"pushed_at":"2024-03-16T04:04:22.000Z","size":176,"stargazers_count":9,"open_issues_count":2,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-31T20:22:42.797Z","etag":null,"topics":["class","css","mangler","nuxt","nuxt-module","nuxtjs","obfuscator","vue"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jd1378.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-12-08T07:13:27.000Z","updated_at":"2024-08-20T15:21:01.000Z","dependencies_parsed_at":"2023-12-08T08:31:03.127Z","dependency_job_id":"ccf9e078-74b3-4643-ba98-6590349f2acd","html_url":"https://github.com/jd1378/nuxt-obfuscator","commit_stats":{"total_commits":22,"total_committers":1,"mean_commits":22.0,"dds":0.0,"last_synced_commit":"394fab002a6e3d2a0ac0f6a16040b5a86d9d0c01"},"previous_names":["jd1378/nuxt-obfuscator"],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jd1378%2Fnuxt-obfuscator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jd1378%2Fnuxt-obfuscator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jd1378%2Fnuxt-obfuscator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jd1378%2Fnuxt-obfuscator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jd1378","download_url":"https://codeload.github.com/jd1378/nuxt-obfuscator/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238347633,"owners_count":19456967,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["class","css","mangler","nuxt","nuxt-module","nuxtjs","obfuscator","vue"],"created_at":"2024-09-24T13:44:48.123Z","updated_at":"2025-10-26T14:31:09.841Z","avatar_url":"https://github.com/jd1378.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Nuxt Obfuscator\n\na nuxt module to easily obfuscate/mangle your css class names when building the project\n\n- [✨ \u0026nbsp;Release Notes](/CHANGELOG.md)\n\u003c!-- - [🏀 Online playground](https://stackblitz.com/github/your-org/nuxt-obfuscator?file=playground%2Fapp.vue) --\u003e\n\u003c!-- - [📖 \u0026nbsp;Documentation](https://example.com) --\u003e\n\n## Quick Setup\n\n1. Add `nuxt-obfuscator` dependency to your project\n\n```bash\n# Using pnpm\npnpm add -D nuxt-obfuscator\n\n# Using yarn\nyarn add --dev nuxt-obfuscator\n\n# Using npm\nnpm install --save-dev nuxt-obfuscator\n```\n\n2. Add `nuxt-obfuscator` to the end of `modules` section of `nuxt.config.ts`\n\n```js\nexport default defineNuxtConfig({\n  modules: [\n    // your other modules\n    'nuxt-obfuscator'\n  ],\n  obfuscator: {\n    // default config:\n    mapFile: 'obfuscation.map.json', // where to store class name mappings\n    nameLength: 7, // how many characters each class name should be\n    defaultExtensions: ['.html', '.vue', '.jsx', '.tsx', '.ts', '.js'], // which files to check for class names\n    exclude: [], // if path includes these keywords it will be ignored\n    excludeClassNames: [/^nuxt-.*$/, /^vue-.*$/, /^.*?(-enter.*|-leave.*)$/], // which class names to skip obfuscation and postcss transform. supports regex.\n    dev: false, // if true, class names will be obfuscated in development\n  }\n})\n```\n\n### Optional Steps (Recommended)\n\n3. Build the project once using `yarn generate` or `yarn build` to generate the obfuscation map and add it to git to keep the class names consistent across builds\n\n## Development\n\n```bash\n# Install dependencies\nnpm install\n\n# Generate type stubs\nnpm run dev:prepare\n\n# Develop with the playground\nnpm run dev\n\n# Build the playground\nnpm run dev:build\n\n# Run ESLint\nnpm run lint\n\n# Run Vitest\nnpm run test\nnpm run test:watch\n\n# Release new version\nnpm run release\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjd1378%2Fnuxt-obfuscator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjd1378%2Fnuxt-obfuscator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjd1378%2Fnuxt-obfuscator/lists"}