🚀 A modern, user-friendly invoice generator web application built with React that allows users to create, customize, and send professional invoices with integrated payment tracking.
- 📝 Customizable invoice templates
- 💌 Direct email delivery to clients
- 💳 Multiple payment gateway integrations
- 📊 Real-time payment tracking
- 📱 Responsive dashboard interface
- 🔒 Secure payment processing
- Stripe
- PayPal
- Flutterwave
- Paystack
- Skrill
- GooglePay
- Frontend: React, TailwindCSS, Framer Motion
- Payment Processing: Stripe API, PayPal API, Square API
- Authentication: Google OAuth
- Email Service: Google Mail Service API and NodeMailer
- Database: MongoDB
- Node.js (v16 or higher)
- npm or yarn
- Git
- Clone the repository
git clone https://github.com/sammyarc/proforma.git
cd proforma- Install dependencies
npm install
# or
yarn install- Start the development server
npm run dev
# or
yarn devWe welcome contributions of all sizes! Here's how you can help:
- Look for issues labeled
good-first-issueorhelp-wanted - Comment on the issue you'd like to work on
- Fork the repository
- Create a new branch for your feature/fix
- Submit a Pull Request
- Fork the repo
- Create a new branch
git checkout -b feature/your-feature-name- Make your changes
- Commit with clear, descriptive messages
- Push to your fork
- Create a Pull Request
- Follow the existing code style
- Use meaningful variable and function names
- Comment complex logic
- Write tests for new features
- Keep components modular and reusable
-
Payment Integration Improvements
- Webhook implementations
- Payment status tracking
- Account connection error handling
-
Invoice Template System
- New template designs
- Template customization options
- PDF generation
-
Email System
- Email template design
- Delivery tracking
- Bounce handling
- Create a Stripe account
- Get API keys from dashboard
- Configure webhook endpoints
- Add keys to environment variables
- Create a PayPal Developer account
- Create an application
- Get Client ID and Secret
- Configure OAuth scopes
- Add credentials to environment variables
and so on...
npm run test
# or
yarn test(Deployment instructions to be added)
This project is licensed under the MIT License - see the LICENSE file for details.
Thank you to all contributors who help make this project better! 🙏
Don't forget to ⭐ the repo if you like what you see!