This is the backend server for Wolkendama website (https://www.wolkendama.com). It's main purpose is to send data to wolkendama website, read and write database, send email and payment integration for customer. Currently Wolkendama is created and maintained only by myself.
The server is mainly written by NodeJs and integrates with the following 3rd parties service:
TechStack | Description |
---|---|
bcrypt |
Encrypt admin password to be stored in database |
cloudinary |
Cloudinary APIs for shop image |
compression |
Compress HTTP request |
cookie-parser |
Parse cookie data sent by frontend |
cors |
Setup for cross origin resource sharing |
express |
Create server and routing |
express-rate-limit |
Set rate limit for each IP per route |
helmet |
Secure apps by setting various HTTP headers |
jsonwebtoken |
Used json web token for log in credentials |
mongoose |
Used for create model for MongoDB |
multer |
Middleware for uploading shop photos |
sib-api-v3-sdk |
SendInBlue APIs for sending email templates |
stripe |
Stripe APIs for handling payment gateway and webhook |
forever |
Ensuring that server runs continuously and auto restart |
speakeasy |
Create 2 factor authenticator for extra security |
xss-clean |
Prevent cross site scripting attack |