Modern Vue 3 + Vite application that powers the Suixie account portal (register, login, customer support, etc.). The project now follows a layered structure so UI, state, and network logic stay isolated and easier to scale.
npm install
npm run dev # Starts Vite dev server
npm run build # Builds production bundle
npm run previewWindows PowerShell blocks
npmby default. Run& "C:\Program Files (x86)\nodejs\npm.cmd" run dev(or use an elevated shell) if you hit execution-policy errors.
src/core– shared primitives such as the API defaults (constants.js), environment resolver (config.js), and reusable errors (errors.js).src/services/httpClient.js– low-level fetch wrapper with error normalization.src/services/modules– domain-specific services (authService,contentService) composed inapiClient.jsand injected via theapiplugin.src/composables– cross-component logic (themes, snackbar, etc.).src/components– route-level pages plus reusable UI.src/plugins/api.js– registers the API client instance so any component can callconst api = useApi().
- Use the
@alias (configured invite.config.js) for all source imports to avoid brittle relative paths. - API credentials/base URL can be overridden with
VITE_API_BASE_URL,VITE_API_KEY, andVITE_TOKEN_STORAGE_KEYin.envfiles.