{"_id":"@cenktekin2008/joplin-plugin-ai-tag-suggester","name":"@cenktekin2008/joplin-plugin-ai-tag-suggester","dist-tags":{"latest":"1.0.6"},"versions":{"1.0.6":{"name":"@cenktekin2008/joplin-plugin-ai-tag-suggester","version":"1.0.6","scripts":{"build":"webpack --env joplin-plugin-config=buildMain && webpack --env joplin-plugin-config=buildExtra","dist":"npm run build && node scripts/pack-jpl.js","update":"npm install -g generator-joplin && yo joplin --update","prepublishOnly":"npm run dist && node scripts/pack-jpl.js && cp dist/manifest.json ./manifest.json"},"license":"MIT","keywords":["joplin-plugin"],"homepage":"https://github.com/cenktekin/joplin-auto-tagger#readme","repository":{"type":"git","url":"git+https://github.com/cenktekin/joplin-auto-tagger.git"},"bugs":{"url":"https://github.com/cenktekin/joplin-auto-tagger/issues"},"devDependencies":{"@joplin/tools":"^2.13.0","@types/node":"^18.7.13","@types/react":"^18.3.3","@types/react-dom":"^18.3.0","copy-webpack-plugin":"^11.0.0","glob":"^8.0.3","html-webpack-plugin":"^5.6.0","on-build-webpack":"^0.1.0","tar":"^6.1.11","ts-loader":"^9.3.1","typescript":"^4.8.2","webpack":"^5.74.0","webpack-cli":"^4.10.0"},"dependencies":{"@google/genai":"^1.15.0","gaxios":"^6.7.1","react":"^18.3.1","react-dom":"^18.3.1"},"gitHead":"3593d3a43b79e07d5d01d1e365080bbafc02a015","_id":"@cenktekin2008/joplin-plugin-ai-tag-suggester@1.0.6","description":"<p align=\"center\">   <img src=\"https://raw.githubusercontent.com/cenktekin/joplin-auto-tagger/main/logo.png\" alt=\"Joplin AI Tag Suggester\" width=\"240\" />   <br/> </p>","_nodeVersion":"25.2.1","_npmVersion":"11.7.0","dist":{"integrity":"sha512-6AiHiuio2Jp3KYKDM2uz9ogyi4yca4bhpoCgwZTLNiUBLIDZ8aW3A3WVzunZFE1cVrh03+0XjhI5UfQYbUDSfQ==","shasum":"7234254fa921dbd636a6860a11c00e72f001ad9f","tarball":"https://registry.npmjs.org/@cenktekin2008/joplin-plugin-ai-tag-suggester/-/joplin-plugin-ai-tag-suggester-1.0.6.tgz","fileCount":38,"unpackedSize":10135297,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIEqXGC5QrbpY0natMYWs/peOvW1728KG4rcxC0sK0/uRAiAvJdmmAszE90Yj34rGMB06/cRqVW7IU7Fy7IZYMoWXJg=="}]},"_npmUser":{"name":"cenktekin2008","email":"cenktekin2008@gmail.com"},"directories":{},"maintainers":[{"name":"cenktekin2008","email":"cenktekin2008@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/joplin-plugin-ai-tag-suggester_1.0.6_1767511679727_0.6096888492706452"},"_hasShrinkwrap":false}},"time":{"created":"2026-01-04T07:27:59.613Z","1.0.6":"2026-01-04T07:28:00.006Z","modified":"2026-01-04T07:28:00.630Z"},"maintainers":[{"name":"cenktekin2008","email":"cenktekin2008@gmail.com"}],"description":"<p align=\"center\">   <img src=\"https://raw.githubusercontent.com/cenktekin/joplin-auto-tagger/main/logo.png\" alt=\"Joplin AI Tag Suggester\" width=\"240\" />   <br/> </p>","homepage":"https://github.com/cenktekin/joplin-auto-tagger#readme","keywords":["joplin-plugin"],"repository":{"type":"git","url":"git+https://github.com/cenktekin/joplin-auto-tagger.git"},"bugs":{"url":"https://github.com/cenktekin/joplin-auto-tagger/issues"},"license":"MIT","readme":"# Joplin AI Tag Suggester\n\n<p align=\"center\">\n  <img src=\"https://raw.githubusercontent.com/cenktekin/joplin-auto-tagger/main/logo.png\" alt=\"Joplin AI Tag Suggester\" width=\"240\" />\n  <br/>\n</p>\n\n<p align=\"center\">\n  <a href=\"https://github.com/cenktekin/joplin-auto-tagger/actions/workflows/build.yml\"><img alt=\"Build\" src=\"https://github.com/cenktekin/joplin-auto-tagger/actions/workflows/build.yml/badge.svg?cacheSeconds=300\" /></a>\n  <a href=\"https://github.com/cenktekin/joplin-auto-tagger/releases\"><img alt=\"Release\" src=\"https://img.shields.io/github/v/release/cenktekin/joplin-auto-tagger?sort=semver&v=1\" /></a>\n  <a href=\"https://github.com/cenktekin/joplin-auto-tagger\"><img alt=\"License\" src=\"https://img.shields.io/github/license/cenktekin/joplin-auto-tagger?v=1\" /></a>\n  <a href=\"https://github.com/cenktekin/joplin-auto-tagger/releases\"><img alt=\"Downloads\" src=\"https://img.shields.io/github/downloads/cenktekin/joplin-auto-tagger/total?v=1\" /></a>\n  <a href=\"https://buymeacoffee.com/cenktekin\"><img alt=\"Buy Me a Coffee\" src=\"https://img.shields.io/badge/Buy%20me%20a%20coffee-FFDD00?logo=buymeacoffee&logoColor=000&labelColor=000&color=FFDD00\" /></a>\n</p>\n\nSuggest relevant tags for your Joplin notes using AI.\n\nProviders:\n\n- Gemini (default)\n- OpenRouter\n\n## Installation\n\nPrerequisites: Node.js, Joplin Desktop.\n\n1. Install dependencies\n\n```\nnpm install\n```\n\n2. Build the plugin and pack a .jpl\n\n```\nnpm run dist\n```\n\n3. In Joplin Desktop, go to Tools → Options → Plugins → Install from file and select the generated .jpl in the `publish/` folder.\n\n## Configuration\n\nOpen Joplin → Tools → Options → AI Tag Suggester.\n\nSettings in `src/index.ts` are registered as Joplin settings:\n\n- provider: \"gemini\" or \"openrouter\" (default: gemini)\n- geminiApiKey: Your Google Gemini API key\n- openrouterApiKey: Your OpenRouter API key\n- openrouterModel: Model id (default: `openrouter/auto`)\n- outputLanguage: Language for generated tags (default: `English`). Examples: \"Traditional Chinese\", \"Turkish\".\n\nNotes:\n\n- For Gemini, the plugin tries: `gemini-2.5-flash`, `gemini-1.5-flash`, `gemini-1.5-flash-8b`.\n- For OpenRouter, the plugin calls `https://openrouter.ai/api/v1/chat/completions` with a structured prompt and expects JSON `{ \"tags\": string[] }`.\n\n## Usage\n\n1. Open any note in Joplin.\n2. Tools → Toggle AI Tag Suggester to open the side panel. Shortcut: Ctrl+Shift+Y (macOS: Cmd+Shift+Y).\n3. Click \"Suggest Tags\". The plugin will analyze the note and return 5 concise, lowercase, hyphenated tags.\n4. Click tags to select/deselect, then \"Apply\" to add them to the note.\n\n## Screenshots\n\n![Side Panel](docs/screenshots/panel.png)\n<small>AI Tag Suggester side panel opened via Tools → Toggle AI Tag Suggester.</small>\n\n![Suggestions](docs/screenshots/suggestions.png)\n<small>Suggested tags returned by the provider. Click to select/deselect.</small>\n\n![Applied Tags](docs/screenshots/applied.png)\n<small>Selected tags applied to the current note.</small>\n\n![Settings](docs/screenshots/settings.png)\n<small>Plugin settings under Tools → Options → AI Tag Suggester.</small>\n\n## Development\n\nBuild:\n\n```\nnpm run build\n```\n\nPack distributable:\n\n```\nnpm run dist\n```\n\n## Support\n\nIf you find this plugin useful and want to support development:\n\n<a href=\"https://buymeacoffee.com/cenktekin\" target=\"_blank\"><img src=\"https://img.buymeacoffee.com/button-api/?text=Buy me a coffee&emoji=☕&slug=cenktekin&button_colour=FFDD00&font_colour=000000&font_family=Inter&outline_colour=000000&coffee_colour=ffffff\" alt=\"Buy Me a Coffee\" /></a>\n\n## License\n\nMIT\n","readmeFilename":"README.md","_rev":"1-4c2411bbec0c64ccf3e6062b3732c171"}