Skip to content

FaaWeell/voucherforge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

3 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

VoucherForge - PDF Invoice Generator

VoucherForge Logo

Aplikasi PDF Invoice Generator profesional dengan live preview. Gratis, cepat, dan aman.

Next.js TypeScript React PDF License


πŸ“‹ Deskripsi

VoucherForge adalah aplikasi web untuk membuat invoice PDF profesional dengan fitur live preview. Semua proses dilakukan di browser (client-side), sehingga data Anda tetap private dan aman.

✨ Fitur Utama

  • πŸ”„ Live Preview - Lihat perubahan invoice secara real-time
  • πŸ“₯ Download PDF - Export invoice langsung ke file PDF
  • 🎨 Desain Profesional - Template invoice clean dan modern
  • πŸ”’ Kalkulasi Otomatis - Subtotal, pajak, diskon dihitung otomatis
  • πŸ’° Format Rupiah - Mendukung format mata uang Indonesia
  • πŸ“± Responsive - Berjalan di desktop dan mobile
  • πŸ”’ Privacy-First - Data tidak pernah meninggalkan browser Anda

πŸ”’ Keamanan & Privasi

πŸ†“ 100% GRATIS | πŸ” 100% AMAN | 🚫 TIDAK MENYIMPAN DATA ANDA

⚠️ PENTING: VoucherForge adalah aplikasi GRATIS dan TIDAK MENYIMPAN data pribadi Anda. Semua data invoice yang Anda masukkan hanya diproses di browser Anda sendiri dan TIDAK PERNAH dikirim ke server manapun.

βœ… Jaminan Privasi Kami

Jaminan Penjelasan
πŸ†“ Gratis Selamanya Tidak ada biaya tersembunyi, tidak ada langganan
🚫 Tidak Ada Registrasi Tidak perlu buat akun, tidak perlu login
πŸ”’ Data Tetap di Browser Semua proses terjadi di komputer Anda
πŸ“‘ Tidak Ada Server Tidak ada data yang dikirim ke internet
πŸ—‘οΈ Data Hilang Saat Refresh Data tidak disimpan permanen
πŸ‘οΈ Tidak Ada Tracking Tidak ada analytics atau pelacakan

πŸ›‘οΈ Bagaimana Data Anda Aman?

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                    BROWSER ANDA                             β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”   β”‚
β”‚  β”‚              VoucherForge App                        β”‚   β”‚
β”‚  β”‚                                                      β”‚   β”‚
β”‚  β”‚   [Input Data] β†’ [Generate PDF] β†’ [Download]         β”‚   β”‚
β”‚  β”‚                                                      β”‚   β”‚
β”‚  β”‚   βœ… Semua proses terjadi di sini                    β”‚   β”‚
β”‚  β”‚   βœ… Data tidak keluar dari browser                  β”‚   β”‚
β”‚  β”‚   βœ… PDF dibuat langsung di komputer Anda            β”‚   β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜   β”‚
β”‚                                                             β”‚
β”‚   ❌ TIDAK ADA koneksi ke server eksternal                  β”‚
β”‚   ❌ TIDAK ADA penyimpanan data di cloud                    β”‚
β”‚   ❌ TIDAK ADA pengiriman data ke pihak ketiga              β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

πŸ” Fitur Keamanan Teknis

Fitur Deskripsi
XSS Protection Input di-sanitasi untuk mencegah serangan
Input Validation Validasi ketat dengan Zod schema
Security Headers CSP, X-Frame-Options, X-XSS-Protection
No External APIs Tidak ada API call ke server luar

πŸš€ Instalasi

Prerequisites

  • Node.js 18+
  • npm atau yarn

Quick Start

# Clone repository
git clone https://github.com/yourusername/voucherforge.git
cd voucherforge

# Install dependencies
npm install

# Jalankan development server
npm run dev

# Buka browser
open http://localhost:3000

Build Production

# Build untuk production
npm run build

# Jalankan production server
npm start

πŸ“ Struktur Project

src/
β”œβ”€β”€ app/
β”‚   β”œβ”€β”€ layout.tsx          # Root layout
β”‚   β”œβ”€β”€ page.tsx             # Halaman utama
β”‚   └── globals.css          # Global styles
β”‚
β”œβ”€β”€ components/
β”‚   β”œβ”€β”€ editor/              # Form components
β”‚   β”‚   β”œβ”€β”€ CompanyForm.tsx
β”‚   β”‚   β”œβ”€β”€ ClientForm.tsx
β”‚   β”‚   β”œβ”€β”€ InvoiceMetaForm.tsx
β”‚   β”‚   β”œβ”€β”€ ItemsTable.tsx
β”‚   β”‚   β”œβ”€β”€ FinancialsForm.tsx
β”‚   β”‚   └── NotesForm.tsx
β”‚   β”‚
β”‚   β”œβ”€β”€ pdf/                 # PDF components
β”‚   β”‚   β”œβ”€β”€ InvoiceDocument.tsx
β”‚   β”‚   β”œβ”€β”€ PDFPreview.tsx
β”‚   β”‚   β”œβ”€β”€ downloadPDF.tsx
β”‚   β”‚   └── styles.ts
β”‚   β”‚
β”‚   └── ui/                  # UI components
β”‚       └── Header.tsx
β”‚
β”œβ”€β”€ lib/
β”‚   β”œβ”€β”€ calculations.ts      # Fungsi kalkulasi
β”‚   β”œβ”€β”€ formatters.ts        # Format mata uang & tanggal
β”‚   β”œβ”€β”€ validators.ts        # Validasi Zod
β”‚   └── security.ts          # Keamanan & sanitasi
β”‚
β”œβ”€β”€ stores/
β”‚   └── invoiceStore.ts      # State management (Zustand)
β”‚
└── types/
    └── invoice.ts           # TypeScript interfaces

πŸ› οΈ Tech Stack

Kategori Teknologi
Framework Next.js 14 (App Router)
Language TypeScript
PDF Engine @react-pdf/renderer
Form React Hook Form + Zod
State Zustand
Styling CSS Modules + CSS Variables
Icons Lucide React

πŸ“– Penggunaan

1. Isi Data Invoice

Lengkapi form di panel kiri:

  • Detail Invoice - Nomor invoice, tanggal
  • Info Perusahaan - Nama, alamat, kontak
  • Info Klien - Nama, alamat klien
  • Items - Daftar barang/jasa
  • Kalkulasi - Pajak dan diskon

2. Preview Real-time

Panel kanan menampilkan preview PDF yang update otomatis saat Anda mengetik.

3. Download PDF

Klik tombol "Download PDF" untuk mengunduh invoice.

4. Demo Data

Klik "Demo Data" untuk mengisi form dengan data contoh.


⚠️ Validasi Input

Aplikasi memvalidasi input untuk memastikan data yang benar:

Field Validasi
Nomor Invoice Format: INV-YYYY-NNN
Email Format email valid
Kuantitas 1 - 9,999
Harga 0 - 999,999,999,999
Pajak 0% - 100%
Diskon 0% - 100% (percentage)

🌐 Deployment

Vercel (Recommended)

# Install Vercel CLI
npm i -g vercel

# Deploy
vercel deploy

Docker

FROM node:18-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci
COPY . .
RUN npm run build
EXPOSE 3000
CMD ["npm", "start"]

πŸ”§ Environment Variables

Tidak ada environment variables yang diperlukan. Aplikasi berjalan sepenuhnya client-side.


πŸ“„ License

MIT License - Bebas digunakan untuk keperluan personal maupun komersial.


🀝 Contributing

Kontribusi sangat diterima! Silakan buat issue atau pull request.

# Fork repository
# Buat branch baru
git checkout -b feature/amazing-feature

# Commit changes
git commit -m 'Add amazing feature'

# Push ke branch
git push origin feature/amazing-feature

# Buat Pull Request

πŸ“ž Support

Jika ada pertanyaan atau masalah:


Made with ❀️ by VoucherForge Team

About

Resources

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published