{"id":22059762,"url":"https://github.com/harukayamamoto0/image-forge","last_synced_at":"2025-10-20T08:45:52.572Z","repository":{"id":230667923,"uuid":"779843208","full_name":"HarukaYamamoto0/image-forge","owner":"HarukaYamamoto0","description":"A powerful tool for creating custom images from templates","archived":false,"fork":false,"pushed_at":"2024-04-13T21:35:30.000Z","size":77,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-04-14T12:04:45.540Z","etag":null,"topics":["artwork","creation","discord","harukayamamoto0","image-processing","manipulation","memes","npm-package","render","template"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/image-forge","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/HarukaYamamoto0.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-03-30T23:48:33.000Z","updated_at":"2024-03-31T16:26:17.000Z","dependencies_parsed_at":"2024-04-13T22:32:09.315Z","dependency_job_id":null,"html_url":"https://github.com/HarukaYamamoto0/image-forge","commit_stats":null,"previous_names":["harukayamamoto0/image-forge"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HarukaYamamoto0%2Fimage-forge","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HarukaYamamoto0%2Fimage-forge/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HarukaYamamoto0%2Fimage-forge/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HarukaYamamoto0%2Fimage-forge/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/HarukaYamamoto0","download_url":"https://codeload.github.com/HarukaYamamoto0/image-forge/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245136394,"owners_count":20566588,"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":["artwork","creation","discord","harukayamamoto0","image-processing","manipulation","memes","npm-package","render","template"],"created_at":"2024-11-30T17:32:17.378Z","updated_at":"2025-10-20T08:45:52.478Z","avatar_url":"https://github.com/HarukaYamamoto0.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ca name=\"readme-top\"\u003e\u003c/a\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"https://imgur.com/aolsTFs.png\" height=\"150\"\u003e\n  \u003cp\u003eA powerful tool for creating custom images from templates\u003c/p\u003e\n  \u003cimg alt=\"Npm Downloads\" src=\"https://img.shields.io/npm/dy/image-forge?style=flat\u0026color=blue\"\u003e\n  \u003cimg alt=\"GitHub watchers\" src=\"https://img.shields.io/github/watchers/HarukaYamamoto0/image-forge?style=flat\"\u003e\n  \u003cimg alt=\"GitHub stars\" src=\"https://img.shields.io/github/stars/HarukaYamamoto0/image-forge?style=flat\"\u003e\n  \u003cimg alt=\"GitHub fork\" src=\"https://img.shields.io/github/forks/HarukaYamamoto0/image-forge?style=flat\"\u003e\n  \u003cimg alt=\"GitHub license\" src=\"https://img.shields.io/github/license/HarukaYamamoto0/image-forge?style=flat\u0026color=red\"\u003e\n\u003c/div\u003e\n\n### ⚠️ Important Warning ⚠️\n[Issue 1](https://github.com/HarukaYamamoto0/image-forge/issues/1)\n\n### Summary\n\n- [📜 About the package](#about-the-package)\n- [📥 Installation](#installation)\n- [🛠️ Usage](#use)\n- [🚀 Action plan](#action-plan)\n- [🧐 Examples](#examples)\n- [❓ FAQ](#fag)\n- [🫶 Contributing](#contributing)\n- [👀 License](#license)\n\n\u003ca name=\"about-the-project\"\u003e\u003c/a\u003e\n\n### 📜 About the package\n\nImage Forge is a package that simplifies creating images from templates. Used in the Discord bot developer community and meme creation, Image Forge offers an effective and intuitive way to generate filters and memes. With a comprehensive range of features, users can easily customize templates.\n\n\u003ca name=\"installation\"\u003e\u003c/a\u003e\n\n### 📥 Installation\n\nInstall using your favorite package manager:\n\n```sh\n# npm\nnpm install image-forge\n\n# yarn\nyarn add image-forge\n\n# pnpm\npnpm add image-forge\n```\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003ca name=\"usage\"\u003e\u003c/a\u003e\n\n### 🧐 Usage\n\nAll generators are exported using a single `index.js` file, so you can simply destructure just the generator you want using destructuring, without having to import every generator:\n\n```js\nimport { GrayFilter } from \"image-forge\";\n```\n\nIn the example below we import the `GrayFilter` generator and create the filter passing the path of the image to be processed, and finally we use the `apply` method to generate a `Buffer` of the image with the applied filter, and write it to the file `imageOutput.png`:\n\n```js\nimport { GrayFilter } from \"image-forge\";\nimport { writeFileSync } from \"node:fs\";\n\nconst filter = new GrayFilter().setSource(\"./imageInput.png\");\nconst imageBuffer = await filter.apply();\n\nawait writeFileSync(\"./imageOutput.png\", imageBuffer);\nconsole.log(\"Processing completed 🎉\");\n```\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003ca name=\"action-plan\"\u003e\u003c/a\u003e\n\n### 🚀 Action plan\n\n- [x] create the because\n- [x] create some base generators\n- [] create good architecture\n- [] create documentation for the generators (like discord.js maybe)\n- [] create meme generators\n- [] God only knows\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003ca name=\"faq\"\u003e\u003c/a\u003e\n\n### ❓ FAQ\n\n#### Can it read an image from a url?\n\nYes, because it uses the `@napi-rs/canvas` package to manipulate images\n\n```js\nconst filter = new GrayFilter().setSource(\"https://imgur.com/eBIlPPn.png\");\n```\n\n\u003c!-- #### How do I export the image to another format?\n\nThis is very simple, just pass the format to be exported to the `apply` method:\n\n```js\nfilter.apply({ format: \"png\" });\n```\n --\u003e\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003ca name=\"contributing\"\u003e\u003c/a\u003e\n\n### 🫶 Contributing\n\nContributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are **greatly appreciated**.\n\nIf you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag \"enhancement\".\nDon't forget to give the project a star! Thanks again!\n\n1. Fork the Project (`gh repo clone HarukaYamamoto0/image-forge`)\n2. Create your Feature Branch (`git checkout -b feature/AmazingFeature`)\n3. Commit your Changes (`git commit -m 'feat: Add some AmazingFeature'`)\n4. Push to the Branch (`git push origin feature/AmazingFeature`)\n5. Open a Pull Request\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003ca name=\"license\"\u003e\u003c/a\u003e\n\n### 👀 License\n\nThis project is licensed under the terms of the MIT license. See the [LICENSE](./LICENSE) file for more details.\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n[object-destructuring]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment#object_destructuring\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fharukayamamoto0%2Fimage-forge","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fharukayamamoto0%2Fimage-forge","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fharukayamamoto0%2Fimage-forge/lists"}