/auto-voice

Customize invoices and download or automate them in a click...or two.

Primary LanguageJavaScript

AutoVoice ๐Ÿงพ

AutoVoice is a Jamstack application that let's users customize invoices and download or automate (coming soon) them in a click...or two.

Checkout AutoVoice

preview


See More

  • Seemless Micro animations and great user experience
  • Search and Filter through not a lot of templates ๐Ÿ˜…

preview-2

  • Instantly choose a template and start editing away. No hassle.
  • Oh, plus you don't have to design them.

preview-2

  • Don't want to use a template now? No worries, Save it for the rainy day.

preview-2

  • Don't like repeating yourself? No worries, you can set default values here, and we'll auto-fill your templates. You're welcome.

preview-2

  • Oh, and your data is secure with our Passwordless login and device detection.

preview-2

preview-2

Try it Out

Feel free to try out the application HERE

Project Tools ๐Ÿ› 

Autovoice is built with:

Running the Application Locally

To run Autovoice locally, you would need to have node.js and npm setup properly on your machine.

โ„น๏ธ NPM is the official package manager for Node.js, and comes prepackaged when Node.js is installed. Alternatively, you can install yarn as a package manager for node.

Install All Dependencies

First install all necessary dependencies

Using NPM

npm install

Using Yarn

yarn

Start the app in development mode (hot-code reloading, error reporting, etc.)

quasar dev

The application should now be running on http://localhost:8080/. Visit the URL to test it yourself.

Lint the files

yarn run lint

Run Integration Tests

AutoVoice has Cypress integrated for E2E tests.

If you have the cypress application installed on your machine, you can run this command for the visual testing suite.

yarn run test:e2e

OR

npm run test:e2e

For CLI based report run:

yarn run test:e2e:ci
npm run test:e2e:ci

Project Structure

๐Ÿ“ Components

Under the components folder are two core folders:

  • Reusables
  • Template

Reusables are components that are used more than once across the application, this includes, notification, breadboards, etc.

๐Ÿ“ components
  ๐Ÿ“ reusables
    ๐Ÿ“ COMPONENT_NAME
      ๐Ÿ…ฅ COMPONENT.VUE

Template contains the vue component versions of our invoice templates themes and related components.

๐Ÿ“ components
  ๐Ÿ“ Template
    ๐Ÿ“ Themes
      ๐Ÿ…ฅ Theme1.VUE
      ๐Ÿ…ฅ Theme2.VUE
      ๐Ÿ…ฅ Theme3.VUE
    ๐Ÿ“ Preview

๐Ÿ“ Gql Folder

This folder contains graphQL mutations and queries used accross the app.

๐Ÿ“ gql
  ๐Ÿ…™ mutations.js
  ๐Ÿ…™ queries.js