├── app.config.ts #runtime contfig(version, ...)
├── components.json #shadcn-vue config
├── connect-messaging.ts #wrapper for .connect message api
├── messaging.ts #message defination @webext-core/messaging
├── public/
│ ├── _locals/ #i18n jsons
│ └── ...
├── entrypoints/ #browser extension scripts entrypoints
│ ├── background/
│ ├── options/
│ ├── page.content/ #content scripts
│ └── popup/
├── src/
│ ├── components/ #resuable(for content/options) components
│ │ ├── debug/ #will not be packaged into build
│ │ ├── custom-ui/ #custom shadcn-vue components
│ │ ├── ui/ #shadcn-vue generates
│ │ └── ...
│ ├── composables/ # composables(hooks)
│ ├── constants/
│ ├── model-providers/ # create obj using user's llm config
│ ├── presets/
│ ├── types/
│ └── utils/