User Management System/ CMS API with Protocol Buffers. [DEPRECATED]
This is the 4th generation user management/ CMS system for rapid project starts.
System is easily expandable with actions
and uses only one route /
, making development for both frontend and backend parts fast and easy.
Tech features:
app/lib/translations/locales
)All requests should have following headers inside encoded body*:
User’s requests (edit, sign out, profile edit, etc.) should have additional token*:
Bearer ...
The request body schemas are in app/lib/schemas/requests
{ body: { bodyField: 'a' }, headers: { .... }}
, so not only body can be encoded, but also client side custom headers (e.g. Action
).** Version 2.0 accepts only flat bodies and only string values, making all, but body.proto
files in schemas/requests
obsolete, they are for body fields reference only.
npm install -g serverless
npm i
Note, some libraries should be built for Linux environment. On Windows 10 Linux bash they can be rebuilt using: npm i --force
# Create S3 bucket:
node init/
# Edit .env.production
# Then:
npm run build:proto
npm run deploy
# Local tests:
npm run test
# npm run offline
# Live logs:
serverless invoke -f users-cubed-api-next -l
serverless logs -f users-cubed-api-next -t -s production -e production
You should secure store for your secret environment variables. This is not implemented here, but should be in critical applications. Keys should be encrypted at rest, in transit with least of privilege.
Primary:
Other:
Nice to have:
GPL v3