Quick start: your first upload
Start with a Local provider that needs no account: create a configuration, save one image, find its gallery record, and then repeat the same workflow with online storage. If you already have a working destination, skip to Upload an image.
Before you start
- Install and open PicList desktop. No separate Node.js installation is needed.
- Prepare a small PNG or JPG, such as a sample illustration you created.
- Create a practice directory. On Windows, an example is D:\PicList-Practice. On macOS / Linux, use ~/Pictures/PicList-Practice and enter its full absolute path in PicList.
Why start locally?
This exercise teaches the interface and upload workflow without a service account or access keys. The file stays on your computer.
1. Configure a destination
Open the Local provider
- Click PicBed in the left sidebar to expand the provider list.
- Choose Local.
- Click the Add New Configuration card.

A provider is a service type, such as Local or GitHub. A configuration is one set of settings for that service, such as a practice directory or blog repository. You can save several configurations for the same provider.
Fill in the required fields
| Field | Practice value |
|---|---|
| Config Name | Practice, or another recognizable name |
| Set Path | The full path to the directory you created |
| Set Custom URL | Leave empty |
| Set Web Path | Leave empty |

Click Confirm to return to the configuration list. The path chooses where the file is written; Practice is a label to help you recognize this configuration.
Select it for uploads
- Click the Practice card so it shows Active.
- If Local is not the default provider, click Set as Default PicBed at the top right.
- Return to Upload and check that the top of the workspace shows both Local and Practice.

Saving a configuration, selecting a configuration, and choosing the default provider are separate actions. The destination label on the Upload page is the quickest way to check the result.
2. Upload an image
Select URL under Output Format to see the local practice result clearly. When writing with an online destination, choose Markdown instead.

Drop your image into the dashed area, or click the area and select it in the file picker. Use one image for your first attempt and wait for progress to finish.
Expected result: a new file appears in your practice directory. With original filenames enabled, it should have the same name as the input. Naming and image-processing settings can change its name, format, or dimensions.
If automatic copying is enabled, the result is copied to the clipboard. Otherwise, copy it from the gallery. Check the saved file either way.
3. Find your result in the gallery
- Click Gallery on the left.
- Find your image. When there are many records, enter part of its filename in the search field.
- Use Open / preview on its card. Use the copy action, or select it and click Copy, to get the link again.

The gallery is this machine's upload history. It does not automatically list every file in a cloud account. Use Cloud storage manager for the remote file list.
4. Check the file and link
The local practice result
With Local and no public domain, the result is a local file path, for example:
D:\PicList-Practice\first-upload.pngThis confirms that the file was saved. Another person's computer cannot read your image through that path. The gallery may use a localhost cache for its preview; that address also belongs to your computer.
An online result
After configuring online storage, choose Markdown. The copied text typically has this form:
This illustrates the output format; example.com is a placeholder. To verify your own link, copy only the HTTPS address inside the parentheses into a browser. A public image should load without signing into the storage account. Then paste the complete Markdown into your article.
Check delivery and access separately
First confirm that the file exists in the destination directory or bucket. Then check that its reader-facing URL opens. The S3 / R2 guide explains how endpoints, buckets, and public domains fit together.
5. Connect online storage
Return to PicBed, create an online configuration, save and select it, and repeat the one-image upload exercise.
| What you already have | Follow this guide |
|---|---|
| Object storage, or plans to use Cloudflare R2 | S3, R2, and MinIO |
| A GitHub account and public repository | GitHub |
| A WebDAV or SFTP server | File services |
| S.EE, OSS, COS, Qiniu, or another platform | Other built-in providers |
| Unsure which destination to choose | Choose a destination |
Online storage needs your own account credentials. Selecting a provider alone does not configure it. A configuration name or public image domain does not replace upload credentials.
Other upload methods
| Input | Action | Useful for |
|---|---|---|
| Local images or files | Drop into the Upload page, or click and select several | Everyday uploads |
| Clipboard image | Copy the image, then click Clipboard | Screenshots and temporary images |
| Absolute file path text | Copy the full path, then use clipboard upload | Passing files from another program |
| Image URLs | URL Upload, with one direct image address per line | Importing images into your destination |
| A file queue | Task Upload, add files, check the interval, then Start | Controlled batches with individual states |
See Upload images and files for detailed instructions, and Upload tasks for batch work.
Mini window upload
Use Mini Window in the main window's title bar, or look for the entry in your system tray menu. Drop files into the small window, or use its context menu for clipboard upload. Configure a working destination first.
Menu bar and tray uploads
The macOS menu bar and Windows tray offer compact upload entry points. Menus vary with the platform and startup mode. Complete and verify your first upload in the main window before relying on a tray workflow.
Main window quick switching
Click the plus next to the current configuration at the top to add it to quick switching. You can favorite up to six configurations. After switching, check the displayed configuration name before the next upload.
If your first upload fails
| What you see | First action | Check |
|---|---|---|
| Missing configuration or authentication failure | Check required fields in PicBed and click Confirm | Upload shows the intended provider and name |
| Local write failure | Use an existing, writable absolute directory | Inspect it in your system's file manager |
| No automatic link copy | Select the gallery record, choose a format, and Copy | Paste into an editor and inspect the text |
| Upload succeeds but the URL does not open | Check the public domain, object path, and read access | Open the original URL without a storage login |
| File in an unexpected directory | Check the selected configuration, prefix, and naming rule | Compare the final filename and object path |
| “The file was uploaded, but saving the result failed” | Use that task's recovery / Retry action | Follow result-saving recovery; avoid dropping the file again |
See Troubleshooting for more checks.
Next steps
You should now be able to confirm that the configuration is correct, the destination contains the file, the gallery has a record, and the copied result fits your use case.
- Image processing: quality presets, proportional resizing, and filename rules.
- Gallery and links: search, bulk copying, and URL-change previews.
- Editor integration: connect Typora or VS Code to PicList.