{"id":13774185,"url":"https://github.com/uploadcare/uploadcare-summernote","last_synced_at":"2025-04-11T20:11:11.684Z","repository":{"id":66231472,"uuid":"59013963","full_name":"uploadcare/uploadcare-summernote","owner":"uploadcare","description":"Uploadcare plugin for Summernote WYSIWYG editor.","archived":false,"fork":false,"pushed_at":"2016-06-28T18:43:49.000Z","size":11,"stargazers_count":28,"open_issues_count":0,"forks_count":15,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-03-21T23:35:14.907Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://uploadcare.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/uploadcare.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}},"created_at":"2016-05-17T10:43:34.000Z","updated_at":"2024-02-21T17:33:09.000Z","dependencies_parsed_at":"2024-01-13T11:57:35.870Z","dependency_job_id":null,"html_url":"https://github.com/uploadcare/uploadcare-summernote","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uploadcare%2Fuploadcare-summernote","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uploadcare%2Fuploadcare-summernote/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uploadcare%2Fuploadcare-summernote/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uploadcare%2Fuploadcare-summernote/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/uploadcare","download_url":"https://codeload.github.com/uploadcare/uploadcare-summernote/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248473127,"owners_count":21109628,"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":[],"created_at":"2024-08-03T17:01:24.484Z","updated_at":"2025-04-11T20:11:11.646Z","avatar_url":"https://github.com/uploadcare.png","language":"JavaScript","funding_links":[],"categories":["Plugins"],"sub_categories":["Insert"],"readme":"# uploadcare-summernote\n\nThis is [Uploadcare] plugin for [Summernote WYSIWYG] editor.\nIt will allow your users to upload files and images from local device, social networks,\ncloud storages without any backend code that is usually required to handle uploads.\n\n## See it in action\n\n\u003ca href=\"https://uploadcare.github.io/uploadcare-summernote/\" target=\"_blank\"\u003eDemo\u003c/a\u003e\n\n## Installation \u0026 configuration\n\n1. Include plugin code on the page with Summernote:\n\n    ```html\n    // bootstrap and jquery\n    \u003clink href=\"http://netdna.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.css\" rel=\"stylesheet\"\u003e\n    \u003cscript src=\"http://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.4/jquery.js\"\u003e\u003c/script\u003e\n    \u003cscript src=\"http://netdna.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.js\"\u003e\u003c/script\u003e\n\n    // summernote\n    \u003clink href=\"http://cdnjs.cloudflare.com/ajax/libs/summernote/0.8.1/summernote.css\" rel=\"stylesheet\"\u003e\n    \u003cscript src=\"http://cdnjs.cloudflare.com/ajax/libs/summernote/0.8.1/summernote.js\"\u003e\u003c/script\u003e\n\n    // plugin\n    \u003cscript src=\"./uploadcare.js\"\u003e\u003c/script\u003e\n    ```\n\n3. Add button for plugin in toolbar settings and provide any Uploadcare [widget settings] you may want:\n\n    ```html\n    \u003cscript type=\"text/javascript\"\u003e\n      $(function() {\n        $('#summernote').summernote({\n          // unfortunately you can only rewrite\n          // all the toolbar contents, on the bright side\n          // you can place uploadcare button wherever you want\n          toolbar: [\n            ['uploadcare', ['uploadcare']], // here, for example\n            ['style', ['style']],\n            ['font', ['bold', 'italic', 'underline', 'clear']],\n            ['fontname', ['fontname']],\n            ['color', ['color']],\n            ['para', ['ul', 'ol', 'paragraph']],\n            ['height', ['height']],\n            ['table', ['table']],\n            ['insert', ['media', 'link', 'hr', 'picture', 'video']],\n            ['view', ['fullscreen', 'codeview']],\n            ['help', ['help']]\n          ],\n          uploadcare: {\n            // button name (default is Uploadcare)\n            buttonLabel: 'Image / file',\n            // font-awesome icon name (you need to include font awesome on the page)\n            buttonIcon: 'picture-o',\n            // text which will be shown in button tooltip\n            tooltipText: 'Upload files or video or something',\n\n            // uploadcare widget options, see https://uploadcare.com/documentation/widget/#configuration\n            publicKey: 'demopublickey', // set your API key\n            crop: 'free',\n            tabs: 'all',\n            multiple: true\n          }\n        });\n      });\n    \u003c/script\u003e\n    ```\n\n## Required setting\n\nThere is only one - your public API key. You can get that by creating an\naccount [Uploadcare]. You can use demo public key during dev stage, but note that\ndemo account files are removed every few hours.\n\n\n## Useful settings\n\n### Locale.\nSet widget locale. Should be set as global variable:\n\n```html\n\u003cscript\u003e\n  UPLOADCARE_LOCALE = 'es';\n\u003c/script\u003e\n```\n\n### Crop.\nYou can enable custom crop in the widget. After a user selects a file she will\nbe able to crop it, according to your settings. Original file will be uploaded\nto your project, but additional crop operations will be included in resulting\nimage URL.\n\nCrop options is a string with one or more crop presets. Presets are divided by\ncommas. When more than one preset is defined, user can pick any of them on crop\nstep. Each preset consists of a size definition and optional keyword.\n\n- \"disabled\" — crop is disabled. Can't be combined with other presets;\n- \"\" or \"free\" — crop enabled and the user will be able to select any area on an image;\n- \"2:3\" — user will be able to select an area with aspect ratio 2:3;\n- \"300x200\" — same as previous, but if the selected area is bigger than 300x200, it will be scaled down to these dimensions;\n- \"300x200 upscale\" — same as previous, but the selected area will be scaled even if it is smaller than the specified size;\n- \"300x200 minimum\" — user will not be able to select an area smaller than 300x200. If uploaded image is smaller than 300x200 itself, it will be upscaled.\n\n```html\n\u003cscript type=\"text/javascript\"\u003e\n  $(function() {\n    $('#summernote').summernote({\n      ...\n      uploadcare: {\n        ...\n        crop: '4:3, 3:4'\n      }\n    });\n  });\n\u003c/script\u003e\n```\n\n### Tabs (Upload Sources)\n\nThe widget can upload files from disk, URLs, and many social sites.\nEach upload source has its own tab in the widget dialog.\n\nA full list of tabs supported in the latest widget version\n(2.0.6) is provided below.\n\n\u003ctable class=\"reference\"\u003e\n  \u003ctr\u003e\n    \u003cth\u003eCode\u003c/th\u003e\n    \u003cth\u003eFile Source\u003c/th\u003e\n    \u003cth\u003eDefault\u003c/th\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003efile\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eLocal disk\u003c/td\u003e\n    \u003cth\u003eOn\u003c/th\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ecamera\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eLocal webcam\u003c/td\u003e\n    \u003cth\u003eOn\u003c/th\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eurl\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eAny URL\u003c/td\u003e\n    \u003cth\u003eOn\u003c/th\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003efacebook\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://www.facebook.com/\"\u003eFacebook\u003c/a\u003e\u003c/td\u003e\n    \u003cth\u003eOn\u003c/th\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003egdrive\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://drive.google.com/\"\u003eGoogle Drive\u003c/a\u003e\u003c/td\u003e\n    \u003cth\u003eOn\u003c/th\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003edropbox\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://www.dropbox.com/\"\u003eDropbox\u003c/a\u003e\u003c/td\u003e\n    \u003cth\u003eOn\u003c/th\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003einstagram\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://instagram.com/\"\u003eInstagram\u003c/a\u003e\u003c/td\u003e\n    \u003cth\u003eOn\u003c/th\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eevernote\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://evernote.com/\"\u003eEvernote\u003c/a\u003e\u003c/td\u003e\n    \u003cth\u003eOn\u003c/th\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eflickr\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://www.flickr.com/\"\u003eFlickr\u003c/a\u003e\u003c/td\u003e\n    \u003cth\u003eOn\u003c/th\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eskydrive\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://onedrive.live.com/\"\u003eOneDrive\u003c/a\u003e\u003c/td\u003e\n    \u003cth\u003eOn\u003c/th\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ebox\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://www.box.com/\"\u003eBox\u003c/a\u003e\u003c/td\u003e\n    \u003cth\u003eOff\u003c/th\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003evk\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://vk.com/\"\u003eVK\u003c/a\u003e\u003c/td\u003e\n    \u003cth\u003eOff\u003c/th\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eHuddle\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://huddle.com/\"\u003eHuddle\u003c/a\u003e\u003c/td\u003e\n    \u003cth\u003eOff\u003c/th\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\nThe set can be reconfigured by\nspecifying the ones you need in a space-separated value.\nSpecial value `all` can be used to enable all supported sources.\n\n```html\n\u003cscript type=\"text/javascript\"\u003e\n  $(function() {\n    $('#summernote').summernote({\n      ...\n      uploadcare: {\n        ...\n        tabs: 'file url instagram flickr'\n      }\n    });\n  });\n\u003c/script\u003e\n```\n\n\n## Other settings\n\nAll Uploadcare widget settings are too numerous to be listed here, please read\nUploadcare [widget documentation] to unleash full uploading power.\n\n[Summernote WYSIWYG]: http://summernote.org/\n[widget settings]: https://uploadcare.com/documentation/widget/#configuration\n[widget documentation]: https://uploadcare.com/documentation/widget/\n[Uploadcare]: https://uploadcare.com/?utm_source=github\u0026utm_medium=description\u0026utm_campaign=summernote\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fuploadcare%2Fuploadcare-summernote","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fuploadcare%2Fuploadcare-summernote","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fuploadcare%2Fuploadcare-summernote/lists"}