Skip to content

rpratama-codes/rekomendasiin-super-app-be

Repository files navigation

Rekomendasiin Super App Backend

I will do with Behavior-driven development (BDD/TDD) with Waterfall Method. This is a store app, but it's not a multi tenant app!. Thread you as a master not a slave like another app!. This is just tool, That you can use. I Mean the whole app, not just the BE only, if just BE, it's also sucks!.

Architecture

Architecture

Progress

  • Auth
    • Google Auth (OAuth2)
    • Firebase Auth (Phone Number)
    • Bearer Auth
    • Magic Link (Concept, verification Only)
    • OTP (verification Only)
  • Prisma ORM (Concept) - new generator.
  • SMTP
  • Bundler (Rollup)
  • Logger
  • Containerize app
  • Email Template
  • Express Router Wrapper
  • DevEx
    • React Email (Email Tooling)
    • Docker (Containerization)
    • Bruno API Client
    • Resend (SMTP Server)
    • Prisma (Database ORM)
    • Vite Build (Bundler)
    • Vitest (Unit Test)
    • Biome (Linter)
    • Husky (commit hook)

Planned

  • Event (Async Service)
  • Payment Module (Payment Gateway Integration)
  • Product (App Feature) - In Progress 🏗️
  • LLM Invocation (AI) - In Progress 🏗️
  • RBAC/ABAC (Owner, Billing, Admin, User)
  • Security Best Practice 🏗️
  • Unit Test - In Progress 🏗️
  • E2E Test
  • Swagger API Documentation
  • Semi Micro Service (Concept)
  • GRPC
  • REST APIs 🏗️
  • Websocket

Build

# On Builder
pnpm install
pnpm build
# because the repository using husky as git hook
# so it may unset first the prepare script
# read : https://joshtronic.com/2022/07/10/husky-command-not-found-with-npm-install-production/
cd dist
pnpm pkg set scripts.prepare=" "
pnpm install --production --shamefully-hoist

# On runner
node index.js

@rpratama-codes
Readable, Maintainable, Future Proof!.

About

Rewrite of my undergraduate thesis app but with many improvement as my lecturer said.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages