refactor: rename intric to eneo across entire codebase#309
Open
MaxEriksson2000 wants to merge 15 commits intodevelopfrom
Open
refactor: rename intric to eneo across entire codebase#309MaxEriksson2000 wants to merge 15 commits intodevelopfrom
MaxEriksson2000 wants to merge 15 commits intodevelopfrom
Conversation
Rename the entire backend Python package from `intric` to `eneo`: - Directory: backend/src/intric/ → backend/src/eneo/ - All imports: from intric.xxx → from eneo.xxx - Package name in pyproject.toml - Class names: IntricEventType → EneoEventType, SSEIntricEvent → SSEEneoEvent, etc. - API contract: intric_error_code → eneo_error_code - WebSocket subprotocol: "intric" → "eneo" - All test patch() module paths updated - Alembic migration imports updated (6 files, no SQL changes) The deprecated INTRIC_* env var fallbacks in config.py are kept intentionally for backwards compatibility with existing deployments.
- Package: @intric/intric-js → @eneo/eneo-js - Package: @intric/ui → @eneo/ui - Package: @intric/eslint-plugin → @eneo/eslint-plugin - Package: @intric/web → @eneo/web - Classes: IntricError → EneoError, IntricSocket → EneoSocket, etc. - Functions: createIntric → createEneo, getIntric → getEneo, etc. - Files: Intric.ts → Eneo.ts, IntricSocket.ts → EneoSocket.ts, etc. - All variable names, CSS classes, token types, and component names updated - API contract: intric_error_code → eneo_error_code in SDK client - WebSocket subprotocol reference updated in socket client
- Frontend .env: INTRIC_BACKEND_URL → ENEO_BACKEND_URL (with legacy fallback) - Scripts: sync-frontend-with-backend.sh updated - i18n message keys referencing "intric" updated - CLAUDE.md files updated with new paths
Final cleanup pass: - Rename SDK source file: intric.js → eneo.js - Rename all remaining SDK types: IntricFetchFunction → EneoFetchFunction, etc. - Rename UI plugin: intricIcons → eneoIcons, intricTheme → eneoTheme - Rename ESLint plugin rules: intric/* → eneo/* - Fix SSE event type: intric_event → eneo_event - Update all remaining comments and docstrings Only intentional INTRIC_ references remain: - config.py: deprecated INTRIC_* env var fallbacks (backwards compat) - environment.server.ts: INTRIC_BACKEND_URL legacy fallback - schema.d.ts: auto-generated backend schema references (intric__ prefixed)
The start script and hatch wheel target still referenced the old intric package path, causing `uv run start` to fail.
The vite.config.ts still imported from the old vite-plugin-intric-icons path after the package rename. Update to use vite-plugin-eneo-icons and the eneoIcons export.
bun respects workspace dependency order when running multiple filters, causing @eneo/web to wait indefinitely for @eneo/ui's watch process. Adding --parallel runs both simultaneously.
bun --parallel still respects workspace dependency order, so @eneo/web waited indefinitely for @eneo/ui's watch process. Using shell & starts both immediately without blocking.
- Rename CSS color variables (--color-intric-* → --color-eneo-*) - Update brand/chart/dynamic-colour theme tokens in light and dark themes - Regenerate schema.d.ts from backend with eneo module paths - Update all frontend README files
The mechanical intric→eneo rename changed client_id="intric" to "eneo", but the JWT token payload has "aud":"intric" baked into its RSA signature and cannot be changed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Complete rebranding of the codebase from "intric" to "eneo". This is a mechanical rename that touches ~1,400 files but makes no behavioral changes.
intric/→eneo/, all imports, class names, API contract fields, and WebSocket subprotocol@intric/*packages to@eneo/*, all class/function/variable names, component files, and CSS referencesintric_error_code→eneo_error_code, WebSocket subprotocol"intric"→"eneo", SSE event typeintric_event→eneo_event.envvariables renamed toENEO_*pattern (legacyINTRIC_*fallbacks kept for backwards compatibility)What was NOT changed
INTRIC_*env vars still work via fallback inconfig.pyandenvironment.server.tsintric__prefixed Python module paths from OpenAPI schema generation (will update on next schema regeneration)Breaking changes
intric→eneo@intric/*→@eneo/*npm packagesintric_error_code→eneo_error_code"intric"→"eneo"INTRIC_*env vars →ENEO_*Deployment notes
Existing deployments using
INTRIC_*environment variables will continue to work — the backendconfig.pyhas a deprecation fallback that readsINTRIC_*whenENEO_*is not set. Frontendenvironment.server.tshas the same fallback. These should be updated toENEO_*before v3.0.Test plan
uv run pytest tests/unittests/ -xbun run checkbun run buildintricin source:grep -ri "intric" backend/src/ frontend/apps/web/src/ frontend/packages/ --include="*.py" --include="*.ts" --include="*.svelte" --include="*.js" --exclude-dir=node_modules --exclude-dir=.svelte-kit --exclude-dir=build --exclude-dir=paraglide --exclude-dir=dist