Giter VIP home page Giter VIP logo

invoice-generator's Introduction

Invoice Generator


Form screenshot

Preview screenshot



Table of Contents


Introduction

Invoice Generator is a web application built with React that allows users to generate and manage invoices. The app provides a simple and intuitive interface for users to input invoice details and generate a professional-looking invoice that can be printed or saved as a PDF.

Demo

Demo the latest build here

Features

  • Input and save vendor and client details
  • Input and save invoice details (invoice number, date, due date)
  • Add and edit line items (item name, quantity, price)
  • Calculate totals and taxes automatically
  • Add notes and payment details
  • Preview and print invoices
  • Download invoices as PDF files

Planned Improvements

  • Save and retrieve invoices from database
  • Save Client/Vendor information to database
  • Upload logo image to invoices
  • Implement download button to download PDF file
  • Implement Signup/Login functionality to accomodate multiple users
  • Create user sales reports to visualise business success

Installation and Setup

  1. Clone this repository:

    git clone https://github.com/tom-odonovan/Invoice-Generator.git 
  2. Install dependencies:

    cd invoice-generator
    yarn install
  3. Run the app:

    yarn start
  4. Open http://localhost:3000 in a web browser to view the app.


Usage

  1. Enter the invoice details in the top section of the form.
  2. Fill out the vendor and client details in the form.
  3. Add line items by filling out the item name, quantity, and price and clicking the "Add Item" button.
  4. The app will calculate the totals and taxes automatically.
  5. Add any additional notes or payment details in the bottom section of the form.
  6. Preview the invoice by clicking the "Preview" button.
  7. Print the invoice using the Print button or Download by selecting 'save as a PDF' via the print preview.

Contributing

Contributions to the Invoice Generator app are welcome and encouraged! To contribute, follow these steps:

  1. Fork the repository

  2. Create a new branch

    git checkout -b my-new-feature
  3. Make changes and commit

    git commit -m 'Add some feature'
  4. Push to the branch

    git push origin my-new-feature
  5. Create a new Pull Request


Testing

Testing is an important part of this project, and helps ensure that everything is working as expected. To run tests, you'll need to have Node.js and npm installed on your machine. You can install them by following the instructions here.

Once you have Node.js and npm installed, you can run tests with the following command:

npm run test

Successful tests will show a list of passing tests and exit with a status of 0. If any tests fail, you'll see an error message explaining what went wrong. If you need help troubleshooting failed tests, please reach out or check the issue tracker for any known issues.

Licence

This project is licenced under the MIT License.

invoice-generator's People

Contributors

tom-odonovan avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.