# Project Structure ## Root ``` . ├─ docs # documentations ├─ cmd # command-line tool ├─ app # app build with Vue 3 ├─ resources # additional resources, not for build ├─ template # templates for nginx ├─ app.example.ini # example configuration file ├─ main.go # entry point for server └─ ... ``` ## Documentations ``` . ├─ docs │ ├─ .vitepress # configurations directory │ │ ├─ config │ │ └─ theme │ ├─ public # resources │ ├─ [language code] # translations, e.g. zh_CN, zh_TW │ ├─ guide │ │ └─ *.md # guide markdown files │ └─ index.md # index markdown └─ ... ``` ## Frontend ``` . ├─ app │ ├─ public # public resources │ ├─ src # source code │ │ ├─ api # api to backend │ │ ├─ assets # public assets │ │ ├─ components # vue components │ │ ├─ language # translations, use vue3-gettext │ │ ├─ layouts # vue layouts │ │ ├─ lib # librarys, such as helper │ │ ├─ pinia # state management │ │ ├─ routes # vue routes │ │ ├─ views # vue views │ │ ├─ gettext.ts # define translations │ │ ├─ style.css # integrate taildwind │ │ └─ ... │ └─ ... └─ ... ``` ## Backend ``` . ├─ internal # internal packages ├─ api # api for frontend ├─ model # models of database ├─ query # database query files generated by gen ├─ router # router and middleware ├─ settings # backend settings ├─ test # unit tests ├─ main.go # main program entry └─ ... ``` ## Template ``` . ├─ template │ ├─ block # template for Nginx block │ ├─ conf # template for Nginx configuration │ └─ template.go # embed template files to backend └─ ... ```