鍵.png)
node.js + express + docker + mysql + jwt 實(shí)現(xiàn)用戶管理restful api
在使用上和常規(guī)的開發(fā)套路很像,第一步畫 UI 界面,第二步連接到數(shù)據(jù)源,第三步將數(shù)據(jù)源和 UI 界面串起來,第四步部署,只不過將原有編碼過程變成了可視化過程。
此外還提供了大量的模板可供使用,包括 Project、Management Support、Human Resources、Sales、Marketing、Finance 等方向,有些思路對(duì)于不少低代碼方向有一定參照作用。
Budibase 官方宣稱是一個(gè)你會(huì)喜歡使用的低代碼平臺(tái),通過簡(jiǎn)單易用的方式來提高構(gòu)建一個(gè)應(yīng)用的速度。和 Appsmith 相比,是另外一種實(shí)現(xiàn)方式,此外 Budibase 有內(nèi)置數(shù)據(jù)庫(kù)、外部數(shù)據(jù)源、設(shè)計(jì)圖形用戶界面和自動(dòng)化部分,在創(chuàng)建 UI 界面的使用使用的是偏設(shè)計(jì)的方式,整體而言會(huì)更加美觀一點(diǎn)。
此外 ToolJet 也是一個(gè)不錯(cuò)的低代碼框架,同樣支持接入多種數(shù)據(jù)源,偏拖拽的方式實(shí)現(xiàn)前端的界面,包括對(duì)于 mobile 端的一些支持,此外使用的是 JS 比較友好。
除去上面外,nocobase、illa-builder?和?refine?這三款也可以去調(diào)研調(diào)研。
BaaS (Backend as a Service) 這個(gè)概念我是從 2019 年開始弄 Serverless 的時(shí)候開始了解到的,當(dāng)時(shí)想著要是有很多好用的 BaaS 能力,那寫 FaaS 函數(shù)會(huì)不知道有多爽。
對(duì)于想快速實(shí)現(xiàn)一個(gè)產(chǎn)品而言,使用 BaaS,開發(fā)人員可以專注于前端開發(fā),而無需花費(fèi)大量時(shí)間和精力來構(gòu)建和維護(hù)后端基礎(chǔ)設(shè)施,這使得開發(fā)人員能夠快速構(gòu)建應(yīng)用程序,更快地將其推向市場(chǎng)。不過這一塊當(dāng)前在國(guó)內(nèi)其實(shí)弄得沒有國(guó)外那么好用和精致,國(guó)外有幾個(gè)還不錯(cuò)的。
Supabase 是一個(gè)開源工具的組合,使用企業(yè)級(jí)的開源產(chǎn)品構(gòu)建 Firebase 的功能。Firebase 是谷歌旗下的一家 BaaS 云服務(wù)公司,可以讓開發(fā)者通過 Firebase 的框架就可以簡(jiǎn)單地開發(fā)一個(gè) App,無需服務(wù)器以及基礎(chǔ)設(shè)施。了解了他是啥,就大概知曉 Supabase 是什么了。
主要功能是提供了數(shù)據(jù)庫(kù)托管、身份驗(yàn)證和授權(quán)、自動(dòng)生成 API、函數(shù)服務(wù)、文件存儲(chǔ)等易用能力,相當(dāng)于這些代碼的實(shí)現(xiàn)使用者都不需要寫了,只需去調(diào)用即可,此外提供了 JS/C#/Flutter/Go/Java/Python/Swift/Rust 等客戶端庫(kù)來供使用,更多可見文檔。
除去 Supabase,Appwrite 也是一個(gè)很有名的完整后端服務(wù)能力,可以當(dāng)做他的競(jìng)品,功能差不多,通過視覺化界面極簡(jiǎn)了從零編寫 API 的繁瑣過程,在保證軟件安全的前提下為開發(fā)者創(chuàng)造了一個(gè)高效的開發(fā)環(huán)境?;?Docker 的端到端開發(fā)者平臺(tái),其容器化的微服務(wù)庫(kù)可應(yīng)用于網(wǎng)頁(yè)端,移動(dòng)端,以及后端。
提供對(duì)應(yīng)的軟件服務(wù),如賬戶、用戶、團(tuán)隊(duì)、數(shù)據(jù)庫(kù)、存儲(chǔ)、云函數(shù)、多語言、頭像等通用能力,并搭配對(duì)應(yīng)客戶端或服務(wù)端的開發(fā)套件,使用微服務(wù)架構(gòu)方式讓其更好擴(kuò)展。
此外在數(shù)據(jù)庫(kù)領(lǐng)域還有一個(gè)叫做?SurrealDB?的端到端的云原生數(shù)據(jù)庫(kù),適用于 Web、移動(dòng)端、無服務(wù)器、后端和傳統(tǒng)應(yīng)用程序,通過簡(jiǎn)化數(shù)據(jù)庫(kù)和 API 調(diào)用來減少現(xiàn)代應(yīng)用程序的開發(fā)時(shí)間,消除對(duì)大多數(shù)服務(wù)器端組件的需求。
敲代碼快 10 年的后端同學(xué)應(yīng)該對(duì) Discuz、DedeCMS、WordPress 這種當(dāng)時(shí)很火的框架很熟悉,還記得大學(xué)時(shí)期經(jīng)常用 DedeCMS 去接商業(yè)項(xiàng)目,很快很爽?,F(xiàn)在這一類偏后端解決方案進(jìn)一步發(fā)展,變得更加簡(jiǎn)單、美觀、好用了,這里簡(jiǎn)單介紹一下 Strapi 類的無頭 CMS,簡(jiǎn)單而言就是只提供數(shù)據(jù)的內(nèi)容管理系統(tǒng),不關(guān)注 UI,內(nèi)容優(yōu)先。
Strapi 是開源的無頭 CMS,使用 JavaScript,很靈活完全可定制,支持不少插件,可以很快的生成一條 REST API 服務(wù),整體使用起來對(duì)于前端同學(xué)來言還是比較熟悉的,可以一試。
Cube 是一個(gè)用于構(gòu)建數(shù)據(jù)應(yīng)用程序的 Headless 商業(yè)智能框架,使用任何來源的數(shù)據(jù),將其組織成一致的指標(biāo),并將其用于每個(gè)數(shù)據(jù)應(yīng)用程序。
此外除去 Strapi 、Cube 這兩個(gè)比較有名的 Headless CMS,你還可以試試?payload、webiny-js?這兩個(gè)。
看起來不少公司都有自己的服務(wù)編排的平臺(tái),對(duì)于大一點(diǎn)的廠,可能每一個(gè) BU 都有一個(gè),不過整體而言都很難做到好用,同時(shí)很難講明白「服務(wù)編排比寫代碼要快要方便」這個(gè)點(diǎn),大多數(shù)前期很熱鬧,中期很平穩(wěn),后期很難玩下去,任重而道遠(yuǎn),不過很期待正在做的同學(xué)能夠到達(dá)「守得云開見月明」,把這一塊能力探得更深一點(diǎn)。
不過在一些特定工作流領(lǐng)域,有做得不錯(cuò)的,比如說 Automate 和 n8n 這兩個(gè)工具,對(duì)于流程編排的建設(shè)可以參考一波。
Automa 是一個(gè)瀏覽器自動(dòng)化工作流的瀏覽器擴(kuò)展,使用連接塊的方式來很方便的編排你的常用操作,有自動(dòng)填充表單、截圖、取數(shù)據(jù)、定時(shí)觸發(fā)、操作瀏覽器、Web 交互等能力,可以將你重復(fù)的操作很好的交給這個(gè)工具,好比快捷指令。
他做得比較好的點(diǎn)是很易于使用,同時(shí)提供了不少開箱即用的能力,讓人很快速就完成自己的需求。
n8n 是一個(gè)可擴(kuò)展的工作流自動(dòng)化工具,看了看對(duì)于做流程性的節(jié)點(diǎn)編排,邏輯控制還是很不錯(cuò)的,此外支持基于代碼自部署。
除去上面常用的低代碼能力,還有兩個(gè)很神器的,其實(shí)不少人常用的 Notion 筆記本身也是一個(gè)低代碼工具,與之對(duì)應(yīng)的開源實(shí)現(xiàn)叫 AppFlowy,還有一種通過編寫配置 DSL Json 的方式來構(gòu)建各個(gè)部分的功能的開源產(chǎn)品叫做 YAO,最后還有一種是?Airtable模式的開源方式 NocoDB。
如上所說,其實(shí)弄低代碼的同學(xué),很有必要去玩玩 Notion,已經(jīng)被大量人玩出了花,此外可以試試這個(gè)開源的 AppFlowy,基于此,可以來看如何控制數(shù)據(jù)到界面的這個(gè)展示過程。
YAO 是一款開源應(yīng)用引擎,使用 Golang 編寫,以一個(gè)命令行工具的形式存在, 下載即用。適合用于開發(fā)業(yè)務(wù)系統(tǒng)、網(wǎng)站/APP API 接口、管理后臺(tái)、自建低代碼平臺(tái)等。YAO 采用 flow-based 的編程模式,通過編寫 YAO DSL (JSON 格式邏輯描述) 或使用 JavaScript 編寫處理器,實(shí)現(xiàn)各種功能。
去年第一次見到 YAO 的時(shí)候,就被他的創(chuàng)新思路給吸引了,此外他自帶的界面能力設(shè)計(jì)很不錯(cuò),整體安裝體驗(yàn)很順暢,對(duì)于他的產(chǎn)品實(shí)現(xiàn)對(duì)于想做協(xié)議驅(qū)動(dòng)的同學(xué)應(yīng)該有不少借鑒作用。比如說下面這個(gè)系統(tǒng)居然是用 JSON 配置給寫出來的,包括 UI 的展示。
NocoDB 是?Airtable的一個(gè)開源替代品。Airtable 是啥呢?Airtable 是一個(gè)電子表格-數(shù)據(jù)庫(kù)混合體,它具有數(shù)據(jù)庫(kù)的功能,但實(shí)際上是電子表格,還可以把 文字、圖片、鏈接、文檔等各種資料整合在一起。反向來看 Notion 的大思路差不多,不過這個(gè)是重協(xié)作的使用場(chǎng)景。
NocoDB 的作用就是將 MySQL、PostgreSQL、SQL Server、SQLite 或 MariaDB 轉(zhuǎn)換為智能電子表格,使用場(chǎng)景可以參考下面 gif,還是挺有想象空間的。
此外還有一個(gè)類 Airtable 領(lǐng)域的新起之秀叫做?ApiTable,剛開源不久,整體而言做的比較精致,很推薦一玩,可以去研究研究。
只能低代碼說這一塊是很卷了,不過找到了對(duì)應(yīng)的場(chǎng)景,同時(shí)可以真正解決問題,比原本敲代碼要快,那基本上是可以找到一個(gè)很好的發(fā)展空間。此外文章中有不少是個(gè)人自以為的東西,假如發(fā)現(xiàn)有不對(duì)的,歡迎指出。
Appsmith:?https://github.com/appsmithorg/appsmith
Retool:?https://retool.com/
Budibase:?https://github.com/Budibase/budibase
ToolJet:?https://github.com/ToolJet/ToolJet
nocobase:?https://github.com/nocobase/nocobase
illa-builder:?https://github.com/illacloud/illa-builder
refine:?https://github.com/refinedev/refine
Supabase:?https://github.com/supabase/supabase
文檔:?https://supabase.com/docs
Appwrite:?https://github.com/appwrite/appwrite
SurrealDB:?https://github.com/surrealdb/surrealdb
Strapi:?https://github.com/strapi/strapi
Cube:?https://github.com/cube-js/cube.js
payload:?https://github.com/payloadcms/payload
webiny-js:?https://github.com/webiny/webiny-js
Automate:?https://github.com/AutomaApp/automa
n8n:?https://github.com/n8n-io/n8n
Airtable:?https://www.airtable.com/
AppFlowy:?https://github.com/AppFlowy-IO/AppFlowy
YAO:?https://github.com/YaoApp/yao
NocoDB:?https://github.com/nocodb/nocodb
Airtable:?https://www.airtable.com/
ApiTable: https://github.com/apitable/apitable
本文章轉(zhuǎn)載微信公眾號(hào)@阿里巴巴終端技術(shù)
node.js + express + docker + mysql + jwt 實(shí)現(xiàn)用戶管理restful api
nodejs + mongodb 編寫 restful 風(fēng)格博客 api
表格插件wpDataTables-將 WordPress 表與 Google Sheets API 連接
手把手教你用Python和Flask創(chuàng)建REST API
使用 Django 和 Django REST 框架構(gòu)建 RESTful API:實(shí)現(xiàn) CRUD 操作
ASP.NET Web API快速入門介紹
2024年在線市場(chǎng)平臺(tái)的11大最佳支付解決方案
完整指南:如何在應(yīng)用程序中集成和使用ChatGPT API
選擇AI API的指南:ChatGPT、Gemini或Claude,哪一個(gè)最適合你?
對(duì)比大模型API的內(nèi)容創(chuàng)意新穎性、情感共鳴力、商業(yè)轉(zhuǎn)化潛力
一鍵對(duì)比試用API 限時(shí)免費(fèi)