ViserInv is a modern, high-performance invoice generation tool built with React and TypeScript. It allows users to create, customize, and download professional invoices in PDF format instantly directly from the browser without requiring any backend.
- ⚡ Real-time Preview: See changes instantly as you type in the sidebar.
- 🎨 Custom Branding: Upload company logos, authorized signatures, and select brand colors.
- 📄 PDF Export: High-quality A4 PDF download functionality powered by
html2pdf.js. - themes Styling: Choose from multiple invoice styles (Clean White, Geometric Dots, Modern Abstract).
- 💰 Smart Calculations: Automatic calculation of line items, subtotals, taxes, and grand totals.
- 🌍 Multi-Currency Support: Support for USD, BDT, EUR, GBP, and more.
- 📱 Responsive Design: Optimized for a smooth experience on various screen sizes.
- Framework: React (v18)
- Language: TypeScript
- Build Tool: Vite
- PDF Engine: html2pdf.js
- Icons: FontAwesome
- Styling: CSS3 (Variables & Flexbox)
Follow these steps to run the project locally on your machine.
Make sure you have Node.js installed.
-
Clone the repository
git clone [https://github.com/visernic/viserInv.git](https://github.com/visernic/viserInv.git) cd viserInv -
Install dependencies
npm install
-
Run the development server
npm run dev
-
Open in Browser Visit
http://localhost:5173(or the link shown in your terminal) to view the application.
viserInv/
├── public/ # Static assets (favicons, demo images)
│ └── viserInv-demo.png
├── src/
│ ├── App.tsx # Main Application Logic & UI
│ ├── App.css # Styling & Themes
│ ├── main.tsx # Entry Point
│ └── vite-env.d.ts # TypeScript Declarations
├── index.html # HTML Template
├── package.json # Dependencies & Scripts
├── tsconfig.json # TypeScript Configuration
└── vite.config.ts # Vite Configuration
To create a production-ready build:
npm run buildThe output will be generated in the dist folder, which can be deployed to Vercel, Netlify, or any static hosting service.
Contributions are always welcome!
- Fork the project
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is open-source and available under the MIT License.
Developed by Visernic Limited
