aws-serverless-airline-booking无服务器航旅预订示例

航班搜索的整套流程、支付流程、用户积分体系都打通的全栈项目,aws-serverless-airline-booking算是个蛮完整的范例。前端用的是 Vue.js + Quasar,界面还挺美观,组件丰富,响应也快,配合 AWS Amplify 登录注册这些用户交互,基本不怎么费劲。

服务端用的是 AppSync + GraphQL,数据存 DynamoDB,结构清晰,类型强,前后数据一套流下来没啥阻碍。支付部分接的是 Stripe,而且是用的 Stripe Elements 来做表单交互,卡片验证这些也都封装好了,体验不错。

CI/CD 也搭好了,前后端都能持续集成部署。如果你正想整一个全栈无服务器项目,或者练手 GraphQL + Serverless + Vue 的组合,这个项目还挺适合参考。代码全开源,文档也还算清楚,照着跑一遍没啥大坑。

如果你想搞点自己的功能,比如扩展一下积分规则、换个身份认证方案(比如改用 Cognito),都挺方便。哦对了,项目还有完整的端到端测试,省得你每次改完手动点半天。

如果你之前没怎么接触过 无服务器架构,可以先看看相关的样板项目:像DynamoDB API 样板Nuxt.js 无服务器 SSR这些都挺实用,搭配来看更容易上手。

部署的话就照着 README 来一步步堆栈叠上去,用 CloudFormation 或 CDK 都行,启动挺快的。推荐自己亲手部署一下,理解会更深。

folder
aws-serverless-airline-booking:“航空公司预订”是一个示例Web应用程序,它提供航班搜索,航班付款,航班预订和忠诚度积分,包括端到端测试,GraphQL和CICD。 该Web应用程序的主题是在2019年4月24日至8月底运行的AWS Twitch上基于无服务器第2季构建 预估大小:229个文件
file
sample-queries-mutations.gql 3KB
file
index.html 545B
file
favicon.ico 1KB
file
.browserslistrc 33B
file
.eslintignore 20B
file
MANIFEST.in 115B
file
setup.cfg 687B
file
.gitignore 5KB
file
.coveragerc 532B
file
.eslintrc 357B
file
.editorconfig 20B
file
.eslintignore 19B
file
setup.cfg 283B
file
.coveragerc 494B
file
setup.cfg 283B
folder
.gitkeep 文件夹
file
.coveragerc 494B
file
.editorconfig 89B
file
.gitignore 10KB
file
schema.graphql 2KB
zip 文件大小:3.48MB