Deployed Link : https://rkt-wk-avez.netlify.app/products
- i18n localization
- Error boundary
- Lazy loading
- Scalable file folder structure
- Composables
- Layouts
- Many more...
/src
├── assets/
├── components/
├── composables/
├── interfaces/
├── layouts/
├── locales/
├── router.ts
├── utils/
├── views/
├── App.vue
├── main.ts
├── shims-vue.d.ts
├── site.css
├── vite-env.d.ts
├── .gitignore
- The main directory where all application source files exist.
- Contains static files like images, SVGs, and global styles.
- Contains Vue components that are reusable throughout the app.
- Structured into subfolders:
custom/: Core reusable UI components (e.g., buttons, modals, inputs, charts, selects).general/: App-specific components like sidebar, table, filters, modals.
- Contains custom Composition API functions for better modularity.
- Example Composables:
useCharts.ts(Chart-related logic)useFilters.ts(Filters logic)useModal.ts(Modal handling logic)useProducts.ts(Product-related logic)
- Contains TypeScript type definitions for objects, props, and API responses.
- Defines page layouts, such as default layouts, admin layouts, etc.
- Example:
DefaultLayout.vue(Base layout for most views)
- Contains translation files for different languages.
- Example:
en/(English translations)mh/(Marathi translations)
- Defines application routes and lazy loading of views for optimization.
- Consider modularizing routes (e.g.,
routes/admin.ts,routes/user.ts) if the app scales.
- Stores general-purpose utility functions for reuse across the app.
- Stores Vue components that represent full pages/views.
- The root Vue component that wraps the entire application.
- Entry point of the Vue application, where the Vue instance is created and mounted.
- TypeScript shim for
.vuefiles to enable type checking.
- Global CSS file for styles that apply across the application.
- TypeScript environment definitions for Vite.
- Specifies files and folders that should be ignored by Git.