{"id":21685777,"url":"https://github.com/chandan8018/invoicegeneration","last_synced_at":"2026-04-11T03:06:00.624Z","repository":{"id":246164346,"uuid":"820247774","full_name":"Chandan8018/InvoiceGeneration","owner":"Chandan8018","description":"Develop a programmatic way of generating an invoice for orders placed on an e-commerce platform. ","archived":false,"fork":false,"pushed_at":"2024-07-12T03:02:44.000Z","size":15562,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-25T12:09:22.468Z","etag":null,"topics":["aceternity-ui","firebase-auth","firebase-storage","flowbite","framer-motion","html2canvas","material-ui","mern-stack","react-pdf-renderer","render","swagger-ui","tailwindcss"],"latest_commit_sha":null,"homepage":"https://abc-invoices.onrender.com/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Chandan8018.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-06-26T05:20:09.000Z","updated_at":"2024-07-12T03:02:47.000Z","dependencies_parsed_at":null,"dependency_job_id":"cc43b9cd-4468-494e-8e5e-245060a481e2","html_url":"https://github.com/Chandan8018/InvoiceGeneration","commit_stats":null,"previous_names":["chandan8018/abc_invoices"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Chandan8018%2FInvoiceGeneration","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Chandan8018%2FInvoiceGeneration/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Chandan8018%2FInvoiceGeneration/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Chandan8018%2FInvoiceGeneration/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Chandan8018","download_url":"https://codeload.github.com/Chandan8018/InvoiceGeneration/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244609351,"owners_count":20480779,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aceternity-ui","firebase-auth","firebase-storage","flowbite","framer-motion","html2canvas","material-ui","mern-stack","react-pdf-renderer","render","swagger-ui","tailwindcss"],"created_at":"2024-11-25T16:23:04.014Z","updated_at":"2025-12-30T20:55:36.708Z","avatar_url":"https://github.com/Chandan8018.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Invoice Generation For e-commerce Web.\n\n## Table of Contents\n- [Project Overview](#project-overview)\n- [Features](#features)\n- [Technologies Used](#technologies-used)\n- [API Documentation](#api-documentation)\n- [Installation](#installation)\n- [Usage](#usage)\n- [Folder Structure](#folder-structure)\n- [Demo](#demo)\n- [Contributing](#contributing)\n- [License](#license)\n- [Contact](#contact)\n\n## Project Overview\nThis project involves generating a detailed invoice based on various input parameters, including seller details, order details, item details, and tax calculations. The invoice will also include placeholders for the company logo and the seller's signature image.\n\n## Features\n- **Dynamic Input Handling**: Easily input and manage seller, billing, and shipping details.\n- **Tax Computation**: Automatically compute tax types and amounts based on the place of supply and delivery.\n- **Net Amount Calculation**: Derive net amounts for each item considering unit price, quantity, and discounts.\n- **Detailed Item Listing**: List multiple items with comprehensive details including description, unit price, quantity, discount, and net amount.\n- **Total Amount Calculation**: Compute the total amount including tax for all items.\n- **Amount in Words**: Convert the total amount to words for easy readability.\n- **Signature and Authorization**: Insert seller's signature image and authorization note.\n- **Company Logo**: Placeholder for including the company logo in the invoice.\n- **pdf Download**: User can download pdf after create invoice.\n- **Responsive Design**: The application is mobile-friendly and has a clean design.\n\n## Technologies Used\n- **Frontend**: React, Vite, JavaScript, Tailwind CSS, Flowbite, firebase, to-words, Framer Motion, and MUI\n- **Backend**: Node.js, Express, jsonwebtoken,jsonwebtoken, and swagger-ui(API-Docometation), Lazy loading\n- **Database**: MongoDB\n- **State Management**: Redux\n- **Authentication**: Google OAuth\n- **Animations**: Framer Motion\n- **Hosting**: Render\n\n## API-Documentation\nClick on link use api- ([API Documentation](https://abc-invoices.onrender.com/api-docs/))\n![API Documentation](./frontend/public/Swagger-UI.png)\n\n## View PDF\n\nYou can [view the PDF here](./frontend/public/invoice.pdf).\n\n## Embedded PDF\n\n\u003cembed src=\"../frontend/public/invoice.pdf\" width=\"400\" height=\"600\" type=\"application/pdf\"\u003e\n\n## Installation\n\n1. **Clone the repository**:\n    ```bash\n    git clone https://github.com/Chandan8018/InvoiceGeneration.git\n\n    ```\n\n2. **Backend Setup**:\n    ```bash\n    npm install\n    ```\n\n3. **Frontend Setup**:\n    ```bash\n    cd frontend\n    npm install\n    ```\n\n4. **Environment Variables**:\n    - Create a `.env` file in the root of the `api` directory and add your MongoDB URI, JWT secret, and other necessary environment variables.\n    - Create a `.env` file in the root of the `frontend` directory and add your Firebase and other necessary environment variables.\n\n## Usage\n1. **Start the backend server**:\n    ```bash\n    npm run dev\n    ```\n\n2. **Start the frontend server**:\n    ```bash\n    cd frontend\n    npm run dev\n    ```\n\n3. **Open your browser** and navigate to `http://localhost:7970` to view the application.\n\n### Home Page\n\nThe Home Page is designed to welcome users with an attractive gradient background and interactive elements. It includes links to services and contact pages.\n\n### Sign In / Sign Up\n\nUsers can sign in or register for a new account. These forms handle user input and manage state using Redux.\n\n### Dashboard\n\nAccessible only to authenticated users, the Dashboard displays user-specific information and actions.\n\n## Folder Structure\n\n```sh\n.\n├── api\n|   ├── controllers\n|   |   ├── auth.controller.js\n|   |   ├── customer.controller.js\n|   |   ├── invoice.controller.js\n|   |   ├── supplier.controller.js\n|   |   └── user.controller.js \n|   ├── routes\n|   |   ├── auth.route.js\n|   |   ├── customer.route.js\n|   |   ├── supplier.route.js\n|   |   ├── invoice.route.js\n|   |   └── user.route.js\n|   ├── models\n|   |   ├── customer.model.js\n|   |   ├── supplier.model.js\n|   |   ├── invoice.model.js\n|   |   └── user.model.js\n|   ├── utils\n|   |   ├── error.js\n|   |   └── verifyUser.js\n|   └── index.js\n|   \n├── frontend\n|   ├── public\n|   ├── src\n│   |   ├── components\n│   │   |   ├── footer\n│   │   │   |   └── FooterComp.jsx\n│   │   |   ├── header\n│   │   │   |   └── Header.jsx\n│   │   |   ├── privateroute\n│   │   │   |   └── PrivateRoute.jsx\n│   │   |   ├── invoices\n│   │   │   |   ├── FullFeaturedCrudGrid.jsx\n│   │   │   |   └── Invoice.jsx\n│   │   |   ├── googleConfig\n│   │   │   |   └── OAuth.jsx\n│   │   |   ├── dash\n│   │   │   |   ├── DashboardComp.jsx\n|   |   |   |   ├── Profile.jsx  \n|   |   |   |   ├── SideBarComp.jsx  \n|   |   |   |   └── SidebarIcons.jsx\n│   │   |   ├── theme\n│   │   │   |   └── ThemeProvider.jsx\n│   │   |   ├── ui\n│   │   │   |   └── Various UI Components\n│   |   ├── pages\n│   │   |   ├── About.jsx\n│   │   |   ├── Contact.jsx\n│   │   |   ├── Dashboard.jsx\n│   │   |   ├── Home.jsx\n│   │   |   ├── Service.jsx\n│   │   |   ├── SignIn.jsx\n│   │   |   ├── QuizPage.jsx\n│   │   |   ├── UpdateCustomer.jsx\n│   │   |   ├── UpdateSupplier.jsx\n│   │   |   ├── ViewCustomers.jsx\n│   │   |   ├── ViewSuppliers.jsx\n│   │   |   ├── CreateCustomer.jsx\n│   │   |   ├── CreateSupplier.jsx\n│   │   |   └── SignUp.jsx\n│   |   ├── redux\n│   │   |   ├── theme\n│   │   |   │   └── themeSlice.js\n│   │   |   └── user\n│   │   |       └── userSlice.js\n│   |   ├── .env\n│   |   ├── App.jsx\n│   |   ├── main.jsx\n│   |   ├── firebase.js\n│   |   └── index.css\n|   ├── .eslintrc.js\n|   ├── .gitignore\n|   ├── index.html\n|   ├── package-lock.json\n|   ├── package.json\n|   ├── postcss.config.js\n|   ├── tailwind.config.js\n|   └── vite.config.js\n├── .gitignore\n├── package-lock.json\n├── package.json\n└── README.md\n```\n## Demo\n- Invoice Generation Page\n![AfterInvoice](./frontend/public/invoice2.png)\n---\n- Dashboard Page\n![Dashboard Page](./frontend/public/dashboard.png)\n---\n- Home Page\n![Home Page](./frontend/public/home.png)\n---\n- Sign-Up Page\n![Sign Up](./frontend/public/sign-up.png)\n---\n- Sign-In Page\n![Sign In](./frontend/public/sign-in.png)\n---\n- User Profile Update Page\n![Update Profile](./frontend/public/update-profile.png)\n---\n- Side Bar\n![SideBar](./frontend/public/sidebar.png)\n---\n- Preview All Customers Page\n![All Customers](./frontend/public/all-customers.png)\n---\n- Add Customer Page\n![Add Customer](./frontend/public/add-customer.png)\n---\n- Update Customer Page\n![Update Customer](./frontend/public/update-customer.png)\n---\n- Preview All Suppliers Page\n![All Supplier](./frontend/public/all-suppliers.png)\n---\n- Add Supplier Page\n![Add Supplier](./frontend/public/add-supplier.png)\n---\n- Update Supplier Page\n![Update Supplier](./frontend/public/update-supplier.png)\n---\n- Initial Invoice Page\n![BeforeInvoice](./frontend/public/initial-invoice.png)\n---\n\n\n## License\nThis project is licensed under the MIT License. See the LICENSE file for details.\n---\n## Contact\nFor any questions or inquiries, please contact:\n\n- Author: Chandan Kumar Sahoo\n- Email: chandankumarsahoo19@gmail.com\n- GitHub: https://github.com/Chandan8018/\n\nFeel free to reach out for any questions, suggestions, or contributions. Happy coding!\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchandan8018%2Finvoicegeneration","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchandan8018%2Finvoicegeneration","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchandan8018%2Finvoicegeneration/lists"}