/ByteDream-JueJin

Yet Another Blog In JueJin Style By ByteDream

Primary LanguageTypeScriptApache License 2.0Apache-2.0


๐Ÿงช ๆญฃๅœจๅผ€ๅ‘ไธญ

๐ŸŽ‰ ๅญ—่Š‚้’่ฎญ่ฅใ€ŠๅŸบไบŽ Nuxt3 ๅผ€ๅ‘ SSR ไปฟๆŽ˜้‡‘็ซ™็‚นใ€‹ ๐ŸŽ‰

license release issues pulls action


๐Ÿ–ฅ Online Preview

Features

  • โšก๏ธ Nuxt3 - ้ซ˜ๆ€ง่ƒฝ SSR ๆก†ๆžถ
  • โœจ Vue3.2- ๆœ€ๆ–ฐ Vue ๆ›ดๅคš่ฏญๆณ•็ณ–
  • ๐Ÿ’จ Turbo - MonoRepo ้ซ˜ๆ€ง่ƒฝๆก†ๆžถ
  • ๐Ÿ’Ž Strapi - ๆ— ๅคด CMS ๆก†ๆžถ
  • ๐Ÿ˜Ž @Nuxt/Image - images ๆœๅŠก็ซฏๆธฒๆŸ“
  • ๐Ÿ˜ Umami - Better Analytics ่ฎฟ้—ฎๆบๅˆ†ๆž
  • ๐Ÿƒ Commit Lint - commit ่ง„่Œƒๆฃ€ๆŸฅ
  • ๐Ÿ’– Husky & Lint Staged - precommit ่ฟ่กŒๅบ“๏ผŒๆไบคๆ—ถ่ฟ่กŒ
  • ๐Ÿ“ Eslint - ่ง„่ŒƒๅŒ– TypeScriptใ€JavaScript ไปฃ็ 
  • ๐Ÿถ UnoCss - ๅŽŸๅญๅŒ– CSS ๅผ•ๆ“Žใ€ๅ…ผๅฎน tailwindcssใ€windicss
  • ๐Ÿค– preset-icons - unocss ๅฐ่ฃ…็š„ icons
  • โฐ The <script setup> - setup ่ฏญๆณ•็ณ– ๆฅ่‡ช Vue3.2
  • ๐Ÿ Pinia - ๅ…จๅฑ€็Šถๆ€็ฎก็†ๅบ“
  • ๐Ÿš˜ Layout system - ๆ‰€่งๅณๆ‰€ๅพ—
  • ๐ŸŽจ APIs auto importing - ่‡ชๅŠจๅผ•ๅ…ฅ
  • ๐Ÿฆพ TypeScript - ๆ›ด่ง„่Œƒ็š„่ฏญๆณ•
  • ๐Ÿ‘ท Github Actions - actions ่‡ชๅŠจ่ฟ่กŒใ€ci/cd ไบ‘็ซฏๆฃ€ๆŸฅใ€้ƒจ็ฝฒ
  • ๐Ÿ‘€ Automatic Branch and Issue Autolink - ๅˆ›ๅปบ issue ่‡ชๅŠจๅˆ›ๅปบไธ€ไธชๅˆ†ๆ”ฏ
  • ๐Ÿ—บ Nuxt SEO Kit - SEO ไผ˜ๅŒ–ใ€็”Ÿๆˆ og ๅ›พ็‰‡ SSRๅฟ…ๅค‡
  • ๐Ÿ“ฆ Vercel - ่‡ชๅŠจ้ƒจ็ฝฒใ€้ข„่งˆ็š„ๅนณๅฐ
  • ๐Ÿ”ฅ Netlify + Cloudflare - ้ƒจ็ฝฒๅนณๅฐ + cdn ๅŠ ้€Ÿ
  • ๐Ÿ‘€ Sentry - ้—ฎ้ข˜่ฟฝ่ธช
  • ๐Ÿ‘๏ธ MeiliSearch - ๅฟซ้€Ÿ็š„ๆœ็ดขๅผ•ๆ“Ž

ๅผ€ๅ‘

yarn
yarn dev

้ข„่งˆ

่…พ่ฎฏไบ‘ ยท Netlify ยท Vercel

็›ฎๅฝ•็ป“ๆž„

ByteDream-JueJin
โ”œโ”€ .github
โ”‚  โ”œโ”€ ISSUE_TEMPLATE
โ”‚  โ”‚  โ”œโ”€ bug_report.md
โ”‚  โ”‚  โ”œโ”€ custom.md
โ”‚  โ”‚  โ””โ”€ feature_request.md
โ”‚  โ””โ”€ workflows
โ”‚     โ”œโ”€ autoDeploy.yaml // ่‡ชๅŠจ้ƒจ็ฝฒ
โ”‚     โ”œโ”€ issue.yaml
โ”‚     โ”œโ”€ lint.yaml
โ”‚     โ”œโ”€ test.yaml
โ”‚     โ””โ”€ release.yaml
โ”œโ”€ .gitignore
โ”œโ”€ .husky
โ”‚  โ”œโ”€ commit-msg
โ”‚  โ”œโ”€ post-merge
โ”‚  โ”œโ”€ pre-commit
โ”‚  โ””โ”€ _
โ”‚     โ”œโ”€ .gitignore
โ”‚     โ””โ”€ husky.sh
โ”œโ”€ .vscode
โ”‚  โ”œโ”€ extensions.json
โ”‚  โ””โ”€ settings.json
โ”œโ”€ .yarnrc
โ”œโ”€ e2e
โ”œโ”€ backend
โ”‚  โ”œโ”€ .editorconfig
โ”‚  โ”œโ”€ .eslintignore
โ”‚  โ”œโ”€ .eslintrc
โ”‚  โ”œโ”€ .gitignore
โ”‚  โ”œโ”€ .strapi-updater.json
โ”‚  โ”œโ”€ .tmp
โ”‚  โ”‚  โ””โ”€ data.db // ๆ•ฐๆฎๅบ“ๆ–‡ไปถ
โ”‚  โ”œโ”€ config
โ”‚  โ”‚  โ”œโ”€ admin.js
โ”‚  โ”‚  โ”œโ”€ api.js
โ”‚  โ”‚  โ”œโ”€ database.js
โ”‚  โ”‚  โ”œโ”€ middlewares.js
โ”‚  โ”‚  โ”œโ”€ plugins.js
โ”‚  โ”‚  โ””โ”€ server.js
โ”‚  โ”œโ”€ database
โ”‚  โ”‚  โ””โ”€ migrations
โ”‚  โ”‚     โ””โ”€ .gitkeep
โ”‚  โ”œโ”€ favicon.png
โ”‚  โ”œโ”€ package.json
โ”‚  โ”œโ”€ public
โ”‚  โ”‚  โ”œโ”€ robots.txt
โ”‚  โ”‚  โ””โ”€ uploads
โ”‚  โ”‚     โ”œโ”€ .gitkeep
โ”‚  โ”‚     โ”œโ”€ favicon_9f85af9de4.png
โ”‚  โ”‚     โ””โ”€ favicon_f56143b8c2.png
โ”‚  โ”œโ”€ README.md
โ”‚  โ”œโ”€ src
โ”‚  โ”‚  โ”œโ”€ admin
โ”‚  โ”‚  โ”‚  โ”œโ”€ app.example.js
โ”‚  โ”‚  โ”‚  โ””โ”€ webpack.config.example.js
โ”‚  โ”‚  โ”œโ”€ api
โ”‚  โ”‚  โ”‚  โ”œโ”€ .gitkeep
โ”‚  โ”‚  โ”‚  โ”œโ”€ article
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ content-types
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ article
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚     โ””โ”€ schema.json
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ controllers
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ article.js
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ documentation
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ 1.0.0
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚     โ””โ”€ article.json
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ routes
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ article.js
โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ services
โ”‚  โ”‚  โ”‚  โ”‚     โ””โ”€ article.js
โ”‚  โ”‚  โ”‚  โ”œโ”€ author
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ content-types
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ author
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚     โ””โ”€ schema.json
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ controllers
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ author.js
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ documentation
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ 1.0.0
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚     โ””โ”€ author.json
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ routes
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ author.js
โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ services
โ”‚  โ”‚  โ”‚  โ”‚     โ””โ”€ author.js
โ”‚  โ”‚  โ”‚  โ”œโ”€ colum
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ content-types
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ colum
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚     โ””โ”€ schema.json
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ controllers
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ colum.js
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ documentation
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ 1.0.0
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚     โ””โ”€ colum.json
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ routes
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ colum.js
โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ services
โ”‚  โ”‚  โ”‚  โ”‚     โ””โ”€ colum.js
โ”‚  โ”‚  โ”‚  โ”œโ”€ global
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ content-types
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ global
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚     โ””โ”€ schema.json
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ controllers
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ global.js
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ documentation
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ 1.0.0
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚     โ””โ”€ global.json
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ routes
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ global.js
โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ services
โ”‚  โ”‚  โ”‚  โ”‚     โ””โ”€ global.js
โ”‚  โ”‚  โ”‚  โ”œโ”€ tag
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ content-types
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ tag
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚     โ””โ”€ schema.json
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ controllers
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ tag.js
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ documentation
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ 1.0.0
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚     โ””โ”€ tag.json
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ routes
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ tag.js
โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ services
โ”‚  โ”‚  โ”‚  โ”‚     โ””โ”€ tag.js
โ”‚  โ”‚  โ”‚  โ””โ”€ type
โ”‚  โ”‚  โ”‚     โ”œโ”€ content-types
โ”‚  โ”‚  โ”‚     โ”‚  โ””โ”€ type
โ”‚  โ”‚  โ”‚     โ”‚     โ””โ”€ schema.json
โ”‚  โ”‚  โ”‚     โ”œโ”€ controllers
โ”‚  โ”‚  โ”‚     โ”‚  โ””โ”€ type.js
โ”‚  โ”‚  โ”‚     โ”œโ”€ documentation
โ”‚  โ”‚  โ”‚     โ”‚  โ””โ”€ 1.0.0
โ”‚  โ”‚  โ”‚     โ”‚     โ””โ”€ type.json
โ”‚  โ”‚  โ”‚     โ”œโ”€ routes
โ”‚  โ”‚  โ”‚     โ”‚  โ””โ”€ type.js
โ”‚  โ”‚  โ”‚     โ””โ”€ services
โ”‚  โ”‚  โ”‚        โ””โ”€ type.js
โ”‚  โ”‚  โ”œโ”€ components
โ”‚  โ”‚  โ”‚  โ”œโ”€ articles
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ ads.json
โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ content-ad.json
โ”‚  โ”‚  โ”‚  โ””โ”€ layouts
โ”‚  โ”‚  โ”‚     โ”œโ”€ ads.json
โ”‚  โ”‚  โ”‚     โ”œโ”€ footers.json
โ”‚  โ”‚  โ”‚     โ”œโ”€ gadgets.json
โ”‚  โ”‚  โ”‚     โ”œโ”€ links.json
โ”‚  โ”‚  โ”‚     โ””โ”€ navs.json
โ”‚  โ”‚  โ”œโ”€ extensions
โ”‚  โ”‚  โ””โ”€ index.js
โ”‚  โ”œโ”€ start.sh
โ”‚  โ””โ”€ yarn.lock
โ”œโ”€ CHANGELOG.md
โ”œโ”€ commitlint.config.js
โ”œโ”€ frontend
โ”‚  โ”œโ”€ .eslintrc
โ”‚  โ”œโ”€ .gitignore
โ”‚  โ”œโ”€ .prettierrc
โ”‚  โ”œโ”€ .sentryclirc
โ”‚  โ”œโ”€ app.vue
โ”‚  โ”œโ”€ assets
โ”‚  โ”‚  โ”œโ”€ css
โ”‚  โ”‚  โ”‚  โ””โ”€ main.css
โ”‚  โ”‚  โ”œโ”€ highlight.ts
โ”‚  โ”‚  โ””โ”€ themes.ts
โ”‚  โ”œโ”€ components
โ”‚  โ”‚  โ”œโ”€ ArticlesContent // ่ฏฆ็ป†ๆ–‡็ซ 
โ”‚  โ”‚  โ”‚  โ”œโ”€ End
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ ColumnContainer.vue
โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ TagList.vue
โ”‚  โ”‚  โ”‚  โ”œโ”€ highlightStyle.ts
โ”‚  โ”‚  โ”‚  โ”œโ”€ index.vue
โ”‚  โ”‚  โ”‚  โ”œโ”€ SideBar
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ Left
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ index.vue
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ Svg.vue
โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ Right
โ”‚  โ”‚  โ”‚  โ”‚     โ”œโ”€ Author.vue
โ”‚  โ”‚  โ”‚  โ”‚     โ”œโ”€ Catalogue.vue
โ”‚  โ”‚  โ”‚  โ”‚     โ”œโ”€ Column.vue
โ”‚  โ”‚  โ”‚  โ”‚     โ”œโ”€ index.vue
โ”‚  โ”‚  โ”‚  โ”‚     โ””โ”€ RelatedArticles.vue
โ”‚  โ”‚  โ”‚  โ””โ”€ themeStyle.ts
โ”‚  โ”‚  โ”œโ”€ ArticlesList // ๆ–‡็ซ ๅˆ—่กจ
โ”‚  โ”‚  โ”‚  โ”œโ”€ index.vue
โ”‚  โ”‚  โ”‚  โ”œโ”€ Item
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ Ads.vue
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ AuthorCard
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ index.vue
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ Bar
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ Bottom.vue
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ Center.vue
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ Top.vue
โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ index.vue
โ”‚  โ”‚  โ”‚  โ”œโ”€ Navigation
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ index.vue
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ Link.vue
โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ Select.vue
โ”‚  โ”‚  โ”‚  โ””โ”€ Ui
โ”‚  โ”‚  โ”‚     โ”œโ”€ Btns.vue
โ”‚  โ”‚  โ”‚     โ”œโ”€ Img.vue
โ”‚  โ”‚  โ”‚     โ”œโ”€ Link.vue
โ”‚  โ”‚  โ”‚     โ””โ”€ Skeleton.vue
โ”‚  โ”‚  โ”œโ”€ Aside // ไธป้กตไพง่พนๆ 
โ”‚  โ”‚  โ”‚  โ”œโ”€ Advertisements.vue
โ”‚  โ”‚  โ”‚  โ”œโ”€ ArticleList.vue
โ”‚  โ”‚  โ”‚  โ”œโ”€ AuthorList.vue
โ”‚  โ”‚  โ”‚  โ”œโ”€ Footers.vue
โ”‚  โ”‚  โ”‚  โ”œโ”€ Gadgets.vue
โ”‚  โ”‚  โ”‚  โ”œโ”€ index.vue
โ”‚  โ”‚  โ”‚  โ”œโ”€ LinkList.vue
โ”‚  โ”‚  โ”‚  โ”œโ”€ Sign.vue
โ”‚  โ”‚  โ”‚  โ””โ”€ SuspensionPanel.vue
โ”‚  โ”‚  โ”œโ”€ Logo.vue
โ”‚  โ”‚  โ”œโ”€ Main
โ”‚  โ”‚  โ”‚  โ””โ”€ index.vue
โ”‚  โ”‚  โ”œโ”€ Navs // ๅฏผ่ˆชๆ 
โ”‚  โ”‚  โ”‚  โ”œโ”€ index.vue
โ”‚  โ”‚  โ”‚  โ”œโ”€ Item.vue
โ”‚  โ”‚  โ”‚  โ””โ”€ SearchBox.vue
โ”‚  โ”‚  โ”œโ”€ Types
โ”‚  โ”‚  โ”‚  โ”œโ”€ index.vue
โ”‚  โ”‚  โ”‚  โ””โ”€ TagNav.vue
โ”‚  โ”‚  โ””โ”€ Uno
โ”‚  โ”‚     โ””โ”€ DarkToggle.vue
โ”‚  โ”œโ”€ composables
โ”‚  โ”‚  โ”œโ”€ ArticleContent
โ”‚  โ”‚  โ”‚  โ””โ”€ useImmerse.ts
โ”‚  โ”‚  โ”œโ”€ Articlelist
โ”‚  โ”‚  โ”‚  โ”œโ”€ useArtlistFn.ts
โ”‚  โ”‚  โ”‚  โ””โ”€ useScrollBottom.ts
โ”‚  โ”‚  โ”œโ”€ useFold.ts
โ”‚  โ”‚  โ”œโ”€ useThrottle.ts
โ”‚  โ”‚  โ””โ”€ useTime.ts
โ”‚  โ”œโ”€ html.d.ts
โ”‚  โ”œโ”€ layouts
โ”‚  โ”‚  โ””โ”€ default.vue // ้ป˜่ฎคๅธƒๅฑ€
โ”‚  โ”œโ”€ netlify.toml
โ”‚  โ”œโ”€ nuxt.config.ts
โ”‚  โ”œโ”€ package.json
โ”‚  โ”œโ”€ pages // ๅŸบๆœฌ่ทฏ็”ฑ
โ”‚  โ”‚  โ”œโ”€ article // ่ฏฆๆƒ…ๆ–‡็ซ ้กต ๆ นๆฎidๆ˜พ็คบๅฏนๅบ”ๆ–‡็ซ 
โ”‚  โ”‚  โ”‚  โ””โ”€ [id].vue
โ”‚  โ”‚  โ”œโ”€ index.vue // ้ฆ–้กต
โ”‚  โ”‚  โ”œโ”€ [...all].vue // 404้กต้ข
โ”‚  โ”‚  โ””โ”€ [type] // ๆ ‡็ญพ้กตๅŠๅญๆ ‡็ญพ้กต ไพ‹ๅฆ‚๏ผš/frontend/vue
โ”‚  โ”‚     โ”œโ”€ index.vue
โ”‚  โ”‚     โ””โ”€ [tag].vue
โ”‚  โ”œโ”€ plugins
โ”‚  โ”‚  โ””โ”€ sentry.client.ts
โ”‚  โ”œโ”€ public
โ”‚  โ”‚  โ”œโ”€ favicon.png
โ”‚  โ”‚  โ””โ”€ og-image.png
โ”‚  โ”œโ”€ server
โ”‚  โ”‚  โ”œโ”€ api // BFFๆŽฅๅฃ
โ”‚  โ”‚  โ”‚  โ”œโ”€ articles
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ columns
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ [id].ts
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ list.ts
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ tags.ts
โ”‚  โ”‚  โ”‚  โ”‚  โ”œโ”€ update
โ”‚  โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ like.ts
โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ [id].ts
โ”‚  โ”‚  โ”‚  โ”œโ”€ authors
โ”‚  โ”‚  โ”‚  โ”‚  โ””โ”€ list.ts
โ”‚  โ”‚  โ”‚  โ””โ”€ global
โ”‚  โ”‚  โ”‚     โ”œโ”€ ad.ts
โ”‚  โ”‚  โ”‚     โ”œโ”€ content-ad.ts
โ”‚  โ”‚  โ”‚     โ”œโ”€ index.ts
โ”‚  โ”‚  โ”‚     โ”œโ”€ navs.ts
โ”‚  โ”‚  โ”‚     โ”œโ”€ search.ts
โ”‚  โ”‚  โ”‚     โ”œโ”€ tags.ts
โ”‚  โ”‚  โ”‚     โ””โ”€ types.ts
โ”‚  โ”‚  โ””โ”€ README.md
โ”‚  โ”œโ”€ start.sh
โ”‚  โ”œโ”€ tsconfig.json
โ”‚  โ”œโ”€ types
โ”‚  โ”‚  โ”œโ”€ IArticle.ts
โ”‚  โ”‚  โ”œโ”€ IArticleItem.ts
โ”‚  โ”‚  โ”œโ”€ IGlobal.ts
โ”‚  โ”‚  โ”œโ”€ ILink.ts
โ”‚  โ”‚  โ”œโ”€ IMutation.ts
โ”‚  โ”‚  โ”œโ”€ INav.ts
โ”‚  โ”‚  โ”œโ”€ ISearch.ts
โ”‚  โ”‚  โ””โ”€ IType.ts
โ”‚  โ”œโ”€ unocss.config.ts
โ”‚  โ”œโ”€ utils
โ”‚  โ”‚  โ””โ”€ useGraphql.ts
โ”‚  โ””โ”€ vercel.json
โ”œโ”€ index.ts
โ”œโ”€ LICENSE
โ”œโ”€ package.json
โ”œโ”€ README.md
โ”œโ”€ SECURITY.md
โ”œโ”€ turbo.json // MonoRepo ไธป่ฆ้…็ฝฎๆ–‡ไปถ
โ””โ”€ yarn.lock