WebAppTemplate FARM
1.0.0
該儲存庫包含一個在 FARM 解決方案堆疊上運行的全堆疊 Web 應用程式模板,它代表:
FARM 堆疊或多或少是 LAMP 堆疊的擴展,具有以下顯著變化:
Flask 用於編寫可以在 Web UI 和 Web 後端/資料庫之間進行通訊的 Web API/中介軟體。這是整個應用程式的核心,它將全端應用程式的各個部分黏合在一起。
請注意,此特定模板不使用 ORM,而是使用pymysql
模組。這意味著開發人員需要編寫 SQL 查詢,但可以最大限度地提高在資料庫上執行所需的查詢的複雜性。
AWS 是可以託管應用程式的雲端服務。我們可以在以下服務上託管整個軟體堆疊:
這意味著開發人員可以將所有內容保留在一個平台上,並最大限度地減少 DevOps/IT 工作。
React 是 Web UI 運作的框架。 React 應用程式也可以使用 NodeJS 在 AWS Lambda 上運行。
該模板使用 JavaScript / JSX,但也可以使用 TypeScript。
MySQL是Web後端使用的關聯式資料庫。這也可以透過其 RDS 服務託管在 AWS 上。
要執行此 Web 應用程序,需要完成以下操作:
db/
中的架構設定本機 MySQL 實例若要設定 MySQL 實例,請執行下列步驟:
mysql
。sample.sql
。它將建立一個名為SampleInventory
的模式,然後初始化一個名為Inventory
表。Flask API 的程式碼庫可以在api/
目錄中找到。
virtualenv farm-stack
建立一個 Python 虛擬環境。source farm-stack/bin/activate
啟動它api/
並執行pip3 install -r requirements.txt
以安裝 API 所需的所有 Python 模組。api/
目錄中的dbcreds.py
並根據需要編輯資料庫憑證。 python3 app.py
以在http://localhost:8080
上執行 API。React UI 的程式碼庫可以在ui/
目錄中找到。該模板使用yarn
作為其套件管理器;開發人員在新增模組時不要混合使用npm
等其他套件管理器,這一點至關重要。
請注意,此模板中缺少像react-bootstrap
這樣的套件。
yarn install
以安裝所需的所有相依性。 yarn start
以開發模式運作。http://localhost:3000
。