Pure Invoices is designed to simplify your billing process. Simple, direct, and effective – invoicing done right. Learn more at pureinvoices.com.
We have Husky set up to enforce pre-commit checks. These checks ensure that code is properly formatted and linted before being committed.
- Linting and Formatting: We use ESLint for linting and Prettier for code formatting. These tools help maintain code quality and consistency across the project.
- Lint-Staged: This tool runs linters on only staged files, ensuring quick feedback and preventing bad code from being committed.
We use ESLint and Prettier to enforce code quality and style guidelines.
- ESLint: Ensures code quality by catching syntax errors and enforcing best practices.
- Prettier: Formats code consistently to improve readability.
We use Commitlint to enforce conventional commit messages. This ensures that our commit history is readable and that semantic versioning can be applied.
- Node.js v16+
-
Clone the repository:
git clone https://github.com/pureinvoices/web.git
-
Navigate to the project directory:
cd web
-
Install dependencies:
npm install
-
Start the development server:
npm run dev
1. User Authentication ✅
Sign up with email and passwordSign in with email and passwordPassword reset functionality
2. User Profile Management 🛠️
View and edit business details- View and edit user profile
- Edit invoice template data
- Change password
3. Invoice Management
- Create new invoices
- Edit existing invoices
- Delete invoices
- View list of all invoices
- Filter and search invoices
4. Client Management
- Add new clients
- Edit client information
- Delete clients
- View list of all clients
- Filter and search clients
5. Invoice Details
- Add and edit line items
- Calculate totals, taxes, and discounts
- Set due dates and payment terms
6. Invoice Templates
- Choose from predefined invoice templates
7. Export and Share Invoices
- Export invoices as PDF
- Share invoices via email
8. Payment Integration
- Integrate with one payment gateway (PayPal or Stripe)
- Track payment status (paid, unpaid, overdue)
9. Notifications
- Email notifications for invoice creation and updates
10. Settings and Preferences
- Manage account settings
- Configure invoice settings (currency, tax rates, etc.)