{"id":17602353,"url":"https://github.com/yuketsush/invogen","last_synced_at":"2026-01-24T01:36:43.056Z","repository":{"id":258715020,"uuid":"874468543","full_name":"YuketsuSh/InvoGen","owner":"YuketsuSh","description":"InvoGen is an open-source tool that generates professional PDF quotes with customizable templates and multilingual support. Perfect for freelancers and businesses, easily create quotes in multiple languages and export them in stylish PDF formats.","archived":false,"fork":false,"pushed_at":"2024-10-18T16:01:27.000Z","size":839,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-30T09:12:33.874Z","etag":null,"topics":["cli-tool","custom-themes","invoice-generator","multilingual","nodejs","npm","open-source","pdf-generation","pdf-lib","quote-generator"],"latest_commit_sha":null,"homepage":"https://velyorix.com","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/YuketsuSh.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-10-17T22:07:03.000Z","updated_at":"2024-10-19T10:28:31.000Z","dependencies_parsed_at":"2024-10-20T18:50:29.461Z","dependency_job_id":null,"html_url":"https://github.com/YuketsuSh/InvoGen","commit_stats":null,"previous_names":["yuketsush/invogen"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YuketsuSh%2FInvoGen","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YuketsuSh%2FInvoGen/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YuketsuSh%2FInvoGen/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YuketsuSh%2FInvoGen/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/YuketsuSh","download_url":"https://codeload.github.com/YuketsuSh/InvoGen/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251674585,"owners_count":21625645,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli-tool","custom-themes","invoice-generator","multilingual","nodejs","npm","open-source","pdf-generation","pdf-lib","quote-generator"],"created_at":"2024-10-22T13:08:01.187Z","updated_at":"2026-01-24T01:36:43.010Z","avatar_url":"https://github.com/YuketsuSh.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# InvoGen 📝💻\n\nWelcome to **InvoGen**, an open-source tool for generating professional PDF quotes. This tool offers customizable themes, multilingual support, and easy-to-use CLI (Command Line Interface) for creating personalized invoices or quotes.\n\n## Table of Contents\n\n- [Features](#features)\n- [Installation](#installation)\n- [Usage](#usage)\n- [Themes](#themes)\n- [Languages](#languages)\n- [Contributing](#contributing)\n- [License](#license)\n\n---\n\n## Features\n\n- **CLI-based Input**: Simple and interactive command line input for user-friendly experience.\n- **Multilingual Support**: Create PDF quotes in different languages (currently supports English and French).\n- **Custom Themes**: Easily switch between different themes to personalize the appearance of your quotes.\n- **Open-source**: Fully customizable, contribute and modify as per your needs.\n\n---\n\n## Installation\n\n1. Clone this repository:\n\n   ```bash\n   git clone https://github.com/YuketsuSh/InvoGen.git\n   ```\n\n2. Navigate to the project directory:\n\n   ```bash\n   cd invogen\n   ```\n\n3. Install the dependencies:\n\n   ```bash\n   npm install\n   ```\n\n---\n\n## Usage\n\n1. **Start the CLI:**\n\n   To start creating your quote, run the following command:\n\n   ```bash\n   node src/cli.js\n   ```\n\n2. **Follow the prompts**:\n   - Enter your company details, client information, project details, and choose a theme and language.\n   - The PDF will be generated in the project directory as `generated_invoice.pdf`.\n\n---\n\n## Themes\n\nYou can customize the look of your PDF by selecting different themes. Themes are defined as JSON files in the `themes/` directory. By default, the project includes:\n\n- **Classic**: A simple and clean layout with classic font and colors.\n- **Modern**: A sleek and modern design with bold colors and fonts.\n\nYou can create your own themes by adding a new JSON file in the `themes/` folder. Simply copy one of the existing themes and modify the values like font, colors, and margins.\n\nExample of a theme JSON file:\n\n```json\n{\n  \"fontFamily\": \"NotoSans\",\n  \"fontSize\": 14,\n  \"titleFontSize\": 18,\n  \"textColor\": [50, 50, 50],\n  \"titleColor\": [0, 128, 128],\n  \"margin\": {\n    \"top\": 40,\n    \"bottom\": 40,\n    \"left\": 40,\n    \"right\": 40\n  }\n}\n```\n\n---\n\n## Languages\n\n**InvoGen** supports multiple languages for the text displayed in the PDF. You can switch between languages by choosing during the CLI prompt.\n\nCurrently supported languages:\n- **English** (en)\n- **French** (fr)\n\nYou can add support for more languages by adding a new JSON file in the `langs/` folder. Example of a language file:\n\n```json\n{\n   \"companyInfoTitle\": \"Company Information\",\n   \"clientInfoTitle\": \"Client Information\",\n   \"projectDetailsTitle\": \"Project Details\",\n   \"itemsServices\": \"Items/Services\",\n   \"qty\": \"Quantity\",\n   \"unitPrice\": \"Unit Price\",\n   \"total\": \"Total\",\n   \"address\": \"Address\",\n   \"company\": \"Company\",\n   \"email\": \"Email\",\n   \"phone\": \"Phone\",\n   \"totalAmount\": \"Total Amount\",\n   \"siret\": \"Business Registration Number\",\n   \"ape\": \"Industry Code\",\n   \"totalPrice\": \"Total Price\"\n}\n\n```\n\n---\n\n## Contributing\n\nContributions are welcome! If you want to improve the project, add features, or fix bugs, feel free to create a pull request or open an issue.\n\nTo contribute:\n1. Fork the repository.\n2. Create a new branch with your feature or bug fix.\n3. Submit a pull request with a clear description of the changes.\n\n---\n\n## License\n\nThis project is licensed under the MIT License. See the [LICENSE](LICENSE) file for more details.\n\n---\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyuketsush%2Finvogen","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyuketsush%2Finvogen","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyuketsush%2Finvogen/lists"}