This is a Next.js project bootstrapped with create-next-app
.
Cristoval Martinez [email protected]
The Donation Campaign Application is a platform designed to facilitate donation management among team members. It enables team members to receive donations via Stripe, with each member having a unique payment link. The application consists of three main pages: Dashboard, Team Members, and Sign Up.
-
Dashboard:
- Provides an overview of donation data in $USD.
- Displays donation statistics such as total donations, average donation amount, etc.
- Offers visualization tools for easy data interpretation.
-
Team Members:
- Lists each team member along with associated donation data.
- Shows individual payment links for each team member.
- Allows for easy management of team member accounts.
-
Sign Up:
- Allows team members to sign up using their email, name and optional phone number.
- Generates a unique payment link for each team member upon sign-up.
- Ensures a seamless user experience with intuitive design and form validation.
-
Stripe API Integration:
- Used for handling payment links and donation management.
- Facilitates secure and seamless transactions between donors and team members.
-
Custom Auth API Integration:
- Manages user authentication and signup for unique payment IDs.
- Validates user input for database storage.
-
Frontend: Next.js
- Employed for server-side rendering, routing, and state management.
- Utilizes Next.js's built-in features for improved performance and technical SEO.
-
Backend: Stripe API, Custom Auth API
- Integrates Stripe API for payment processing and donation management.
- Implements API routes within Next.js for backend logic.
-
Database: SQLite
- Stores user information and donation data efficiently.
- Provides lightweight database management capabilities.
The application is deployed to a staging server for testing and review. Upon successful testing and acceptance, it will be deployed to a production environment for public access.
To set up the Donation Campaign Application locally, follow these steps and enter the root directory of the application:
- Install dependencies:
npm install
- Set up environment variables as required (e.g., Stripe API keys) in .env.production and .env.local
- Run the application:
npm run dev
- Access the application at
http://localhost:1650
- To build application for production use, run the following
npm run build
thennpm run start
To start the image processing application, run:
npm start
The HTTP server will start listening on the default port (1233). You can access the server by visiting http://localhost:1233
in your browser.
Contributions are welcome, If you find any issues or have ideas for improvements, please feel free to open an issue or submit a pull request.
This repo is licensed under the MIT License.