A professional, lightweight browser extension for Alibaba Cloud OSS image uploading, management, and link generation.
PicAliOSS is a powerful browser extension built with modern web technologies: WXT, Vue 3, TypeScript, PrimeVue, and Pinia. It is tailor-made for developers, designers, and content creators who require a seamless workflow for uploading images to Alibaba Cloud OSS, managing cloud assets, and generating shareable links with minimal friction.
Adopting a pure frontend architecture, PicAliOSS stores all OSS credentials securely within your local browser using AES encryption. No intermediate backend services are involved, ensuring maximum privacy and blazing-fast performance.
- π― OSS-Centric Workflow: Deeply optimized for Alibaba Cloud OSS image hosting.
- π Versatile Upload Methods: Supports local file selection, drag-and-drop, full-page screenshot capturing, and clipboard image pasting.
- π Instant Link Generation: Quickly copy your images as
URL,Markdown, orHTMLformats. - πΌοΈ Comprehensive Asset Management: Built-in OSS explorer with search, preview, deletion, and batch operations.
- βοΈ Intuitive Configuration: Streamlined settings interface with region selection and real-time connection testing.
- π Secure Local Storage: Sensitive OSS credentials are encrypted locally on the client side.
- π οΈ Modern Engineering: Robust development setup powered by
Vitest,Husky,VitePress, with strict type-checking and code formatting.
- Extension Framework:
WXT - Frontend Core:
Vue 3+TypeScript - State Management:
Pinia - UI Components:
PrimeVue+PrimeIcons - Cloud Storage SDK:
ali-oss - Build Tooling:
Vite - Testing:
Vitest - Documentation:
VitePress - Code Quality:
Husky+oxlint+oxfmt
- β Chrome / Edge (and other Chromium-based browsers)
β οΈ Firefox (Build pipeline included; local verification recommended)
git clone https://github.com/yxb123456cy/PicAliOSS.git
cd PicAliOSSWe highly recommend using bun for optimal performance:
bun installDuplicate .env.example to create your local environment file:
cp .env.example .env.localFill in your OSS details in .env.local:
VITE_ACCESSKEY_ID="your_access_key_id"
VITE_ACCESSKEY_SECRET="your_access_key_secret"
VITE_BUCKET="your_bucket_name"
VITE_REGION="your_region"
VITE_APP_EMOJI_ICON="π§‘"
VITE_APP_NAME="PicAliOSS"
VITE_APP_VERSION="v0.1"
VITE_APP_AUTHOR="Your Name"
VITE_APP_DESCRIPTION="Lightweight Alibaba Cloud OSS browser extension."
VITE_APP_BIO="Built with WXT + Vue 3 + TypeScript + PrimeVue for seamless image management."
VITE_APP_REPOSITORY="https://github.com/yxb123456cy/PicAliOSS"bun run devFor Firefox development:
bun run dev:firefoxNote: Once started, load the generated output directory (.output/) via your browser's extension management page.
bun run build
bun run zipbun run dev # Start Chrome/Chromium dev server
bun run dev:firefox # Start Firefox dev server
bun run build # Build for Chrome/Chromium
bun run build:firefox # Build for Firefox
bun run zip # Generate extension ZIP archive
bun run test:unit # Execute unit tests
bun run typecheck # Run TypeScript type checking
bun run lint # Lint source code
bun run format:check # Check code formattingNavigate to the Settings page within the extension and provide:
AccessKey IDAccessKey SecretBucketRegion- Custom Domain (Optional)
Tip: Use the "Test Connection" button to verify your credentials before uploading.
- Click: Select files from your local system.
- Drag & Drop: Drop images directly into the upload zone.
- Screenshot: Capture the current webpage and upload it instantly.
- Clipboard: Paste images directly from your clipboard.
- Search through your uploaded OSS assets.
- Filter to display only image files, hiding unrelated bucket objects.
- Preview, copy links, download, or delete images.
- Utilize batch operations for efficient asset management.
PicAliOSS/
βββ src/ # π¦ Source code directory
β βββ entrypoints/ # Extension entrypoints: popup / background / content
β β βββ popup/ # Popup UI: pages, routes, stores, and views
β βββ utils/ # Core utilities: OSS, crypto, link formatting
β βββ tests/ # Vitest unit tests
β βββ assets/ # Global styles, variables, and images
βββ public/ # πΌοΈ Static assets and icons
βββ docs/ # π VitePress documentation
βββ screenshots/ # πΈ Extension screenshots
βββ .husky/ # πΆ Git hooks
βββ .env.example # π Environment variables template
βββ package.json # π¦ Project metadata and dependencies
βββ wxt.config.ts # βοΈ WXT & Manifest configuration
- Advanced uploads: Large files, multipart uploads, and resumable uploads.
- Enhanced capabilities: Context-menu uploads, i18n support, and theme customization.
- CI/CD: Automated packaging and multi-browser release flows via GitHub Actions.
- Documentation: Comprehensive user guides and developer docs.
We welcome all contributions! Here's how you can help:
- Open an Issue to report bugs or suggest new features.
- Submit a Pull Request to improve code, documentation, or tests.
- βοΈ Star the repository to show your support!
Before submitting code, please ensure all checks pass:
bun run typecheck
bun run test:unitThis project is licensed under the MIT License.






