Finally Open Sourcing My Go-To Backend Toolkit! 🚀

themuneebh

Muneeb Hussain

Posted on August 11, 2024

Finally Open Sourcing My Go-To Backend Toolkit! 🚀

After months of using this toolkit to power not just my projects, but also as a foundational piece for my entire team’s backend development, I’ve decided it’s time to open it up to the community. Meet the TypeScript Backend Toolkit – the engine behind our most successful and scalable projects, now available for everyone.

💡 The Journey

This toolkit started as a humble collection of scripts and configurations, but over time, it evolved into a robust boilerplate that has become essential for our team's backend projects. It's been our secret weapon for delivering scalable, flexible, and maintainable applications in record.timw, and now, we're excited to see how others will take it further.

🛠 Why You’ll Love It

Here’s why this toolkit has been indispensable for us:

  • Authentication Done Right: Google Sign-In integration makes setting up authentication a breeze.
  • User Management: Comprehensive functionality ready to go – saving us countless hours on every project.
  • File Handling: Effortlessly manage file uploads using Multer and S3, freeing up our focus for more complex features.
  • Data Validation: Zod-based validation has been a game-changer in maintaining data integrity.
  • Middleware That Just Works: From JWT to schema validation, everything is pre-configured and reliable.
  • Type-safe Emails: Nodemailer and EJS ensure our email handling is as smooth as our code.
  • Background Jobs: We’ve leaned on BullMQ and Redis for handling asynchronous tasks with ease.
  • Dev and Deployment Tools: With ESLint, ts-node-dev, and tsup, our code quality and efficiency have never been better.

🚀 Getting Started

  1. Docker Up: Get MongoDB and Redis up and running with a single command.
   docker compose up -d
Enter fullscreen mode Exit fullscreen mode
  1. Install & Configure: Use pnpm to install dependencies and get your environment set up.
   pnpm i
Enter fullscreen mode Exit fullscreen mode

Follow the .env.sample to configure your environment variables.

🔭 What’s Next?

This toolkit isn’t just a one-off project; it’s an ongoing effort. Here’s what we’re planning to add:

  • Socket.io for real-time applications.
  • Advanced Notifications via FCM and Novu.
  • AWS CDK for seamless cloud infrastructure management.
  • Monorepo Architecture with Turborepo for even better project organization.
  • Kubernetes Support to handle scaling with ease.
  • And plenty more...

🎉 Join the Journey

Now, we’re opening the doors to the community. Whether you’re looking to contribute, suggest improvements, or just use the toolkit for your own projects, we’d love to have you onboard. Let’s collaborate to push the boundaries of backend development together.

Check it out, give it a spin, and let’s make something great.

👉 GitHub Repo

💖 💪 🙅 🚩
themuneebh
Muneeb Hussain

Posted on August 11, 2024

Join Our Newsletter. No Spam, Only the good stuff.

Sign up to receive the latest update from our blog.

Related