無需服務器端託管,無服務器雲功能或數據庫。 Suri靜態站點可以在幾分鐘內部署到Vercel,Netlify等(通常是免費的)。
蘇里不在乎“技術上優越”的3xx
服務器重定向。蘇里只希望您最終使用您每年花費59美元的域名,並從網絡的咬合和tinyurls中取回您的短鏈接。
https://surishort.link/gh⇒https://github.com/surishortlink/suri
https://surishort.link是一個示例網站,展示了Suri在行動中。您可以查看網站的存儲庫以及管理鏈接以查看其工作原理的文件。
蘇里(Suri)擁有模板存儲庫,可以使起步非常容易。選擇您要部署的平台並遵循逐步說明:
不部署其中一個平台?不用擔心。以下是一些涵蓋大多數其他方案的通用選項,無論是不同的雲提供商還是自己託管:
Suri的src
是links.json
。所有模板存儲庫都包含此文件,其中有幾個示例:
{
"/" : " https://www.youtube.com/watch?v=CsHiG-43Fzg " ,
"1" : " https://fee.org/articles/the-use-of-knowledge-in-society/ " ,
"gh" : " https://github.com/surishortlink/suri "
}
它並不簡單:關鍵是重定向的“短鏈路”路徑,值是目標URL。鑰匙可以使用您想要的任何字符混合物,盡可能短或需要長時間。 /
是重定向根路徑的特殊條目。
Suri帶有一個suri
可執行文件,該文件從links.json
文件中生成靜態站點。靜態站點輸出到名為build
的目錄。
所有模板存儲庫均配置一個build
腳本,該腳本調用此可執行文件,使您運行的命令簡單:
npm run build
當您更改links.json
文件時,只需重新運行此命令以重新生成靜態站點,然後可以重新部署該站點。 Suri具有模板存儲庫的許多平台都配置為自動執行此操作。
通過根目錄中的suri.config.json
文件來處理配置。此時只有一個選項:
選項 | 描述 | 類型 | 預設 |
---|---|---|---|
js | 是否要重定向使用JavaScript而不是<meta> 刷新。 | 布爾 | false |
最後,在構建靜態站點時, public
目錄中的任何文件將被複製到build
目錄,而無需修改。這對於諸如favicon.ico
或robots.txt
之類的文件可能很有用(也就是說,Suri為兩者提供明智的默認值)。
如果您以前在版本0.1到0.5.1上時將此存儲庫分配/克隆該存儲庫,則您現在會注意到一些版本1的差異。
版本1解決了版本0的三個主要問題:
app.json
render.yaml
。 V1通過為每個平台擁有單獨的模板存儲庫來解決此問題,該存儲庫僅包括該平台的必要文件。那麼,您如何升級?如果您只編輯了links.json
文件,則升級很簡單:
links.json
複製。public
目錄中的任何文件,請複制這些文件。SURI_JS
設置為1
,請在suri.config.json
中將js
更改為true
。如果您編輯了高度文件中的任何一個,例如links.njk
模板 - 您可能只想堅持使用V0並繼續使用高度。
除此之外,V1還有其他一些值得注意的變化:
build
而不是_site
目錄。suri.config.json
文件而不是環境變量來完成配置。npm run clean
以刪除構建目錄。 npm run build
在每個新構建之前會自動執行此操作。否則,如果發現它有用,則可以手動添加。npm run dev
以構建,觀看和服務靜態站點。對於Suri生成的小型HTML頁面來說,這是過度的。npm run lint
,並帶有漂亮的棉絨。如果發現有用,則可以手動添加它。npm run release
以發布新版本的Suri。如果要標記存儲庫的發布版本,則可以手動添加它。jstayton
用戶轉移到了所有與Suri相關的存儲庫的新的surishortlink
組織。 唯一的先決條件是node.js的兼容版本(請參閱package.json
中的engines.node
。
使用NPM安裝依賴項:
npm install
內置Node.js測試跑者和斷言模塊用於測試。
進行測試:
npm test
在開發過程中,建議在文件更改時自動運行測試:
npm test -- --watch
JSDOC用於記錄代碼。
將文檔作為HTML生成(git-dignored) docs
目錄:
npm run docs
Prettier的設置是為執行一致的代碼樣式。強烈建議將集成在您的編輯器中添加,以自動在保存上格式化。
ESLINT具有“推薦”規則,以實施一定級別的代碼質量。還強烈建議在您的編輯器中添加集成,以自動在保存上格式化。
通過命令行運行:
npm run lint
當development
分支準備好發佈時,請發布!用於協調發布過程:
npm run release
發布過程完成後,將development
分支合併到main
分支中,該分支應始終反映最新版本。