项目作者: TalaikisInc
项目描述 :
Scalable global user managemenet system/ CMS with Node.js + AWS IaaS.
高级语言:
项目地址: git://github.com/TalaikisInc/api-next.git

Users Cubed 5.0
This is the 5th generation user management/ CMS system for rapid project development. It will be useful for any project, which needs user management system with a scalable architecture. It is a complete rewrite from scratch.
What’s new
- Every feature is now on separate Lambda and using DynamoDB as a database, because dealing with JSON on S3 was more cumbersome with complex data structures.
- Codebase is greatly reduced.
- Paswordless sign in, sign up, this allowed to remove password reset endpoint.
- Account confirmation step is now just sign up.
- All emails are now on templates and managed via AWS SES
- Separate Lambdas now allow much easier expansion of required features independently of each other
- Some features were removed, but they were never fully finished on the first place, so this project is now just about user management, nothing more
- Protocol buffers were removed, because they didn’t provide much of an advantage over JSON for REST-style API without Lambda support.
- Currently on over 30 Lambdas and growing
Features
- User sign in/ sign out/ sign up/ confirm account, delete account
- Passwordless sign up/ sign in
- Dependency minimization
- Token auto expiration
- Email checking before sign up/ sign in with teh DNS records
- Push, SMS, Email notifications
- Admin system
- Automatic database backups
- Contact us service
- Upload service
- A/B testing service
- Billing service
- Newsletter service
- Referral service
- Encrypted database entries (AWS KMS + AWS Secrets Manager), upon request
- Encrypted JWT secret and admin passwords (AWS Secrets Manager), upon request
Infrastructure
API Clients
All requests should have the following auth headers:
Install
npm install -g serverless
npm i
Deploy
# Edit .env.production and config.js
# Then, long running deployment process:
npm run deploy
Previous versions
Frontend Next 5.0
How to easily spawn multiple projects
- Clone repo
- Change service name inside
.env.production
- Add your own functions if needed
- Deploy:
npm run deploy
How to get it
Please contact me via form here
Licence
See LICENCE.txt