從零開始擼一款項目模版管理平臺 【一】

前言

前一段時間膜拜vue3源碼,看scprit腳本時學習到一個用來生成bootstrip.js代碼。其功能經過命令 nodejs bootstrip.js -- projectname 生成新的有統一規範的項目模版。萌生了開發一套模版管理平臺的想法,故在此係列開始介紹如何從零開始設計實現一套模版管理平臺。但願能幫到有須要的同窗,一塊兒提升。vue

本篇內容

本篇主要分享一下準備實現的產品功能及目標,另外也介紹一下準備採用的技術棧供你們參考。java

目標

用來管理經常使用的項目模版,在新建項目時能夠快速獲取有通用模版代碼,減小項目搭建成本提高初始化項目效率。相似vue-cli,create-react-app等腳手架的一個可視化的實現,不一樣點在於生成的模版和項目數據存儲在服務端,好處是模版靈活,項目模版能夠相似資產同樣方便公司級別的管理維護。node

功能

初版將只實現模版管理的核心功能

  1. 新增模版 新增模版功能包括有新增模版,新增模版後模版對應的模版內文件管理,文件模版編輯,模版配置項管理
  2. 編輯模版 除沒有新增入口外,其餘的文件管理,文件模版編輯等功能交互均與新增保存一致
  3. 模版列表 查詢模版列表,且提供新增編輯入口
  4. 根據列表建立項目 在模版列表提供項目建立入口,選擇對應模版點擊建立進入配置項選擇。選擇項目配置。選擇完成後點擊新建根據配置項生成代碼。

後續能夠持續迭代開發的地方

  1. 權限管理,帳號體系
  2. 模版&項目與帳號體系打通
  3. 平臺化,服務化

技術棧

架構採用先後端分離的方式實現,主要使用技術棧以下mysql

  • 後臺服務端選用nestjs,選用的緣由主要是其和java spring mvc模式類似,也有較方便的orm庫,後續如其餘同窗想參考使用java改造本身的服務也方便參考。 官網 nestjs.comreact

  • 管理界面在這個開源項目基礎上開發 antdesignpro vue github.com/sendya/ant-… 不選用react系列的主要緣由是想快速產出產品,vue開發來講效率真的會高一些git

  • db 選用 mysqlgithub

  • 版本管理 gitspring

由於主要是模版管理,數據量並不會太大,暫不考慮緩存等其餘性能相關的設計。初版以實現功能走通流程爲主,並且若是隻是公司內部使用也項目模版除了文件以外,數據量自己不會太大。固然,若是往平臺方面發展作提供服務給全部須要服務的我的或者公司時須要考慮,這是後話,先把當前的想法擼出來。sql

預告

後續篇章的分享將會主要介紹先後臺項目的搭建 ,表結構設計,和核心生成項目代碼部分的實現思路。另外若有時間也會盡可能完善用例圖,產品架構圖,系統架構等等方便快速熟悉項目。vue-cli

相關文章
相關標籤/搜索