Invoice Web Application
This web app allows users to manage invoices efficiently, with capabilities for creating, viewing, updating, and emailing invoices to clients.
- Next.js
- React.js (Frontend)
- Node.js with Express (Backend)
- MongoDB (Database)
- Tailwind CSS and CSS (Styling)
Steps to Run
- Download the ZIP file to your local system and extract it.
- Open a terminal and navigate to the main folder, then run
npm i
to install all dependencies.
- Navigate to the client folder and run
npm i
again to install frontend dependencies.
- Go back to the main folder and run
npm run dev
to start the development server.
- Open
localhost:3000
in your browser if it doesn’t open automatically.
Features of the App
- Invoice Dashboard:
- The homepage displays all invoice summaries, including the client name, business name, email, phone number, amount, creation date, status, and whether the invoice is overdue (indicated by a red or green background).
- Invoices can be paginated for easier navigation.
- Financial Overview:
- Track the total amount pending and the amount that has been paid.
- Email Invoices:
- Send invoices to specific clients via email. Upon sending, a notification confirms successful delivery.
- Actions:
- Send Email: Resend an invoice to the specified client.
- Edit: Modify invoice details.
- Delete: Remove an invoice from the system (see below for details on the deletion process).
- Customer Management:
- Add new customers by entering details such as name, business name, description, email, phone, and image URL.
- Once submitted, a notification confirms that the customer has been created successfully.
- Invoice Deletion:
- Click the delete button to remove an invoice, and a confirmation popup will appear, prompting you to type “delete.”
- After confirmation, the invoice is deleted, and a notification confirms the successful deletion.
- Create New Invoice:
- Use the Create Invoice button to initiate a new invoice.
- A dropdown allows selection of any registered customer, and a confirmation popup appears after successful invoice creation.
- Update Existing Invoice:
- In the actions area, click the Update button to modify invoice details.
- A confirmation popup will notify you when the update is successful.
Demo images of the Web App:
image 1:
![Screenshot 2024-10-20 183652](https://github.com/user-attachments/assets/e1d8dcac-81bf-4c84-875b-ce7974fcc2c0)
image 2:
![Screenshot 2024-10-20 184201](https://github.com/user-attachments/assets/9f69e050-8eb5-497c-bf73-097ca08fca5c)
image 3:
![Screenshot 2024-10-20 184213](https://github.com/user-attachments/assets/5f4c1dd2-9d93-472f-b3b7-8dfe06d3e841)
image 4:
![Screenshot 2024-10-20 195529](https://github.com/user-attachments/assets/f17ea15b-ab81-4c90-adef-63cc6b0b29f6)
image 5:
![Screenshot 2024-10-20 183755](https://github.com/user-attachments/assets/a6c03c0f-aa6a-444f-9168-f2f3a5c8d4cc)
image 6:
![Screenshot 2024-10-20 183904](https://github.com/user-attachments/assets/079e7db4-a07f-4562-889c-f1e89a11ae0a)
image 7:
![Screenshot 2024-10-20 183916](https://github.com/user-attachments/assets/0bd26310-a9ff-410d-873b-e382e1df8a3b)
image 8:
image 9:
![Screenshot 2024-10-20 184005](https://github.com/user-attachments/assets/dff951a6-fae7-49e7-ba51-053b65852d58)
image 10:
![Screenshot 2024-10-20 184018](https://github.com/user-attachments/assets/42304e23-0d9d-43e9-9ca7-c7292e85b063)
image 11:
![Screenshot 2024-10-20 184047](https://github.com/user-attachments/assets/e55c6bc1-25d2-4804-8b4b-135080bed5db)
image 12:
![Screenshot 2024-10-20 192204](https://github.com/user-attachments/assets/f88ab292-e288-4e80-a431-1b28bd648169)
image 13:
![Screenshot 2024-10-20 184104](https://github.com/user-attachments/assets/0b6a351e-9442-400d-b2c1-0005aa662811)
image 14:
![Screenshot 2024-10-20 184301](https://github.com/user-attachments/assets/130cc592-f267-4d4c-a296-ddfee1ec4d7f)
image 15:
![Screenshot 2024-10-20 184323](https://github.com/user-attachments/assets/3b4db22e-86e4-4b61-8082-555739155a8a)