About this project

HASHRATE (SGI) is an internal management system designed for billing and client administration. The project has been modernized as a monorepo that clearly separates client and server logic. The frontend is built using modern technologies including Vite, React, and TypeScript, offering a reactive user interface. Main screens include Home, Billing, History, Clients, and Reports. The billing functionality supports PDF generation, total calculation, advanced filters, and Excel export. The backend utilizes Express and TypeScript, storing client and invoice data in a local SQLite database (data.db file). It provides a RESTful API accessible at routes such as /api/invoices and /api/clients. The system is optimized for scalable and distributed deployments: - Frontend: Can be easily deployed on Vercel. - Backend: Compatible with services like Render or Railway. For production environments, environment variables such as CORS_ORIGIN and VITE_API_URL must be configured to correctly connect the frontend with the backend API. Technical requirements: Node.js 20+ and npm 9+. Local development allows running both the server and client simultaneously via dedicated scripts.