Table of Contents

This is a list of all the sections in this post. Click on any of them to jump to that section.

DonateNow

Overview

DonateNow is a full-stack web application for managing donations to NGOs with PayPal integration, user authentication, email verification, and a comprehensive admin dashboard.

🌟 Key Features

Custom PayPal Integration

Allows donors to seamlessly and securely issue transactions directly to the NGO using PayPal Live and Sandbox modes. Each transaction is recorded and mapped properly within the MongoDB database.

Admin Dashboard & Campaign Tracking

A full-featured Admin panel built using Recharts for data visualization. Tracks campaign goals, current fundraising progress, user management. Supports dynamic CSV generation to export user and donation data for accounting purposes.

Secure User Authentication

End-to-end user authentication utilizing JSON Web Tokens (JWT). Includes OTP-based Email Verification handled via Nodemailer. Password management allows for secure resets through uniquely generated and short-lived OTP tokens.

🏗 Tech Stack

  • Frontend: React 18+ with TypeScript, Vite, Tailwind CSS, Recharts, jsPDF for downloading donation receipts.
  • Backend: Node.js, Express, TypeScript, MongoDB with Mongoose ODM, JWT, bcryptjs, Nodemailer.
  • Security: Rate Limiting, Server-side Input Validation, XSS Protection, CORS setup.