Invoicedia is a modern invoicing web application built with Next.js, designed to streamline the process of creating, managing, and tracking invoices for small businesses and freelancers.
Invoicedia simplifies invoice management by providing a user-friendly interface, real-time updates, and integrations with payment gateways. With responsive design and robust features, it’s tailored for professionals looking to enhance their invoicing workflow.
-
Customizable Invoice Templates
Personalize invoices with company branding. -
Client Management
Store client details and manage projects seamlessly. -
Real-Time Calculations
Automatically calculate totals, taxes, and discounts. -
Payment Integration
Integrated with platforms like Stripe and PayPal for seamless payment collection. -
Export Options
Generate PDF invoices or export data in CSV format. -
Dark Mode
Enhanced usability with light and dark theme options.
- Frontend: Next.js (React Framework)
- State Management: React Context API
- Styling: ShadCN UI & Tailwind CSS
- Authentication: Clerk
- Database: Xata (PostgreSQL)
- ORM: Drizzle ORM
- Payment Gateway: Stripe/PayPal API integration
- Emails: Resend
-
Clone the Repository:
git clone https://github.com/Ekpo-Emmanuel/invoiceedia.git cd Invoicedia
-
Install Dependencies:
npm install
-
Run the Development Server:
npm run dev
Open http://localhost:3000 to view the app in the browser.
-
Environment Variables:
Create a.env.local
file in the project root with the following variables:XATA_DATABASE_URL= NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY= NEXT_PUBLIC_CLERK_SIGN_IN_URL=/sign-in NEXT_PUBLIC_CLERK_SIGN_UP_URL=/sign-up NEXT_PUBLIC_CLERK_SIGN_IN_FORCE_REDIRECT_URL=/dashboard NEXT_PUBLIC_CLERK_SIGN_UP_FORCE_REDIRECT_URL=/dashboard STRIPE_SECRET_KEY= RESEND_API_KEY= INVOICE_TOKEN_SECRET=<generated with an api token generator>
-
Stripe Configuration:
Set up your Stripe account and obtain API keys.
- Login/Register: Create an account or log in using your email or OAuth.
- Create Clients: Add client details to the database.
- Generate Invoices: Use the dashboard to create and manage invoices.
- Track Payments: Monitor invoice statuses and payments in real-time.
Contributions are welcome! Follow these steps to contribute:
- Fork the repository.
- Create a new branch:
git checkout -b feature/your-feature-name
- Commit your changes:
git commit -m "Add your message here"
- Push the branch:
git push origin feature/your-feature-name
- Open a Pull Request.
This project is licensed under the MIT License. See the LICENSE file for details.
For support or inquiries:
- Email: ekpoemmanuelsg@gmail.com
- GitHub: https://github.com/Ekpo-Emmanuel
Enjoy using Invoicedia to manage your invoicing workflow effortlessly! 🚀