46.4k star!从重复搭建到解放双手,Appwrite让开发效率提升80%
后端开发总有一堆琐事要处理。每次搞新项目,这些活都得重新来一遍:
• 用户系统得从头搭,注册登录一个不能少
• 数据库要配,表要设计,各种增删改查
• 文件上传下载得找存储空间,安全性还得考虑
• 消息推送对接各种平台,实时通信也得整
• 定时任务、云函数这些都少不了
这些都是些基础工作,但每次都得重复搞,特别费时间。要是有个现成的解决方案就好了。
图片最近给大家介绍了不少利于个人低代码开发和接私活神器的工具,今天再给大家介绍一个开源神器 - Appwrite,它能帮你轻松解决上述那些烦恼,轻松帮你做更少的事情,获得更大的收获。
,时长00:54
Appwrite能做什么
用户系统
• 用户登录这块做得挺全,邮箱登录、手机登录都支持,要接微信、GitHub这些第三方也是分分钟的事
• 用户在哪登录的、用啥设备登的、啥时候登的,这些信息全都记着,安全日志随时查
• 要搞权限管理也简单,该看的看,不该看的直接拦住,团队协作也都考虑到了
图片数据管理
• 数据库这块用的是NoSQL,存JSON数据特别顺手,想怎么存就怎么存
• 查询功能一应俱全,要按条件筛选、要排序都行,该有的增删改查都有了
• 数据有变化能立马通知你,做个即时搜索、实时更新啥的都不在话下
图片存储功能
• 文件上传下载都给你封装好了,传啥都行,格式随意
• 要是传图片,还能顺便帮你压缩裁剪,省得单独处理
• 安全性也考虑到了,病毒扫描、文件加密都搞定,预览功能也有
图片高级功能
• 要写自定义逻辑有云函数,想跑啥代码都行
• 定时任务直接配个CRON就搞定,比如每天凌晨跑个数据分析
• 事件机制做得不错,数据库改了、文件传了都能及时知道
图片怎么用起来
直接用云服务
最简单的方式,现在还免费:
1. 上appwrite.io注册账号
2. 创建项目
3. 选SDK开始撸代码
自己搭建
要是想自己掌控,用Docker搭建也行:
Linux系统用这个:
docker run -it --rm
--volume /var/run/docker.sock:/var/run/docker.sock
--volume "$(pwd)"/appwrite:/usr/src/code/appwrite:rw
--entrypoint="install"
appwrite/appwrite:1.6.0
Windows系统用这个:
docker run -it --rm ^
--volume //var/run/docker.sock:/var/run/docker.sock ^
--volume "%cd%"/appwrite:/usr/src/code/appwrite:rw ^
--entrypoint="install" ^
appwrite/appwrite:1.6.0
装完访问localhost就能用了。
实际使用案例
用户登录长这样:
const client = new Client()
.setEndpoint('你的域名')
.setProject('项目id');
// 登录就一行代码
const account = new Account(client);
await account.createEmailSession('邮箱', '密码');
存数据这么写:
const db = new Databases(client);
await db.createDocument(
'数据库id',
'集合id',
'文档id',
{
name: '张三',
age: 25,
hobby: ['篮球', '编程']
}
);
上传文件更简单:
const storage = new Storage(client);
await storage.createFile(
'存储id',
'文件id',
document.getElementById('uploader').files[0]
);
写在最后
说实话,用了Appwrite确实省事不少。那些烦人的后端基础设施,它都给你封装好了。API设计得也挺合理,跟着文档撸下来就能用。关键是开源的,出了问题还能自己改。
要说它最适合啥场景,我觉得是这几种:
• 创业初期要快速验证想法
• 个人项目不想搞太复杂
• 小团队没精力维护完整后端
• 做个原型、概念验证
想深入了解的可以看[官方文档],从入门到进阶都写得挺详细。代码示例也多,复制粘贴就能跑。
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~
