Doop
Doop: 오픈소스 멀티플레이어 디자인 캔버스 및 AI 에이전트용 MCP
브라우저에서 무료로 이미지·영상 크기를 정확히 지정해 리사이즈하고 비율 유지·자르기·채우기·패딩 가능, 업로드 없음
Free in-browser image and video resizer. Set exact pixels, a percentage, the longest side or a social media preset; keep ratio, crop to fill, stretch or pad. No upload.
디자인GitHub @bemanagementgp-bit온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
저장소 정보는 아직 수집하지 않았습니다.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
Resize images and short videos to exact pixels, percent or presets, in the browser. Be Management Tools.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Resize images (PNG, JPG, WebP, GIF first frame, BMP, SVG) and short videos (MP4, WebM, MOV – whatever the browser decodes) to an exact pixel size, a percentage, a longest-side limit or a social/web/print/avatar preset. Keep ratio, crop to fill (9-point anchor), stretch or pad. Everything runs on a <canvas> (images) or <video> + MediaRecorder (videos) in the user's browser; nothing is uploaded.
Live: https://sizeconverter-tool.vercel.app/ (placeholder – replaced after deploy)
Free
{name}-{w}x{h} ({index} too).webm (VP9 or VP8 + Opus), audio copied via AudioContext; over-limit files get a "Convert at 720p / first 30 s" fallbackStudio.watermark), also drawn on every video framelocalStoragePro (one-time, price from config.js)
Gates are enforced in app.js via isPro() / Studio.gate(); the UI listens to pro:changed.
index.html tool page + SEO content + FAQ (JSON-LD WebApplication + FAQPage)
styles.css _shared/base.css + app styles
app.js resize engine (images + video) + UI (vanilla JS, no build step)
studio.js shared canvas / drop zone / export / ZIP helpers (copy of _shared/studio.js)
monetize.js shared theme / toast / analytics / AdSense / Pro license helpers
config.js window.APP_CONFIG (site URL, AdSense, GA, checkout URL, price, LICENSE, NEWSLETTER)
privacy.html privacy policy (required for AdSense)
terms.html terms of use
robots.txt, sitemap.xml, vercel.json, favicon.svg, .gitignore
npx serve .
No build step. Open the printed URL. window.SizeConverter exposes addFiles, computePlan, items() and makeSample() for testing in the console.
Deploy the folder as a static site on Vercel (vercel --prod). After the first deploy, replace the placeholder everywhere:
sed -i 's/sizeconverter-tool.vercel.app/your-app.vercel.app/g' index.html privacy.html terms.html robots.txt sitemap.xml config.js README.md
Then run node _shared/apply-brand.js size-converter from the repo root to inject the shared header, hero, footer and lead card.
ADSENSE_CLIENT: "ca-pub-XXXXXXXXXXXXXXXX" in config.js. Slots: sidebar-1, below-tool. privacy.html already discloses advertising cookies.GA_ID: "G-XXXXXXX". Events: add_files, sample, download (from Studio.exportPNG), download_click, download_all, download_zip, generate (video), preset_save, preset_apply, pro_click, begin_checkout, license_activated.PRO_CHECKOUT_URL, PRO_PRICE and LICENSE.store_id / product_id. Until those are set, real keys are refused and only LICENSE.test_keys work locally.NEWSLETTER.url (Formspree / ConvertKit / Beehiiv) to show the lead card that apply-brand.js injects.AudioContext.createMediaElementSource; if the browser blocks the audio context (no user gesture yet) the track may be silent and the row says so.