Guide

Let visitors upload files

Ask Willo for a feature where members upload photos or video, such as a portfolio, gallery or submission form, and test it before it goes live.

Last updated Open in ClaudeOpen in ChatGPT
On this page

This guide adds a feature where people using your site upload their own files: members posting work to a portfolio, customers adding photos to a review, applicants attaching a CV. Willo builds the whole thing: the storage, the rules and the page.

1. Decide three things first

Willo will ask about these if you don't say, so it saves a round trip to decide up front.

  • Who uploads? Usually signed-in members. Your site then needs member login, which Willo adds if it isn't there yet. See Member login email.
  • Who can see the files? Anyone (a public gallery) or only some people (the uploader, you, your staff). This decides whether the files are public or private.
  • What kinds and how big? Photos only, or video too? Phone video is large: the default limit of 50 MB per file is roughly 20 seconds of 1080p.

2. Ask for it

Describe the feature in chat. For example:

"Let signed-in members upload up to 10 photos to their own portfolio page. Anyone can view portfolios. JPEG, PNG and WebP only."

"Add a form where applicants upload a CV as a PDF. Only I should be able to see the CVs."

Willo then:

  1. Creates a storage bucket for the feature, public or private, with the accepted file types and a size limit. This asks for your approval on a card, because a bucket is created on the live backend straight away, even while drafting, and Willo can't delete one from chat. Read the card: it shows whether files will be public.
  2. Adds the access rules so each member can only upload into their own space.
  3. Builds the page and the upload form. Good upload forms check each file's size and type before uploading, show progress, explain any error in plain words, and only save a record once the file has fully arrived.

3. Test it in the draft preview

If your business is drafting, the draft preview has the same bucket with the same rules, but empty, and its sign-ups are throwaway test accounts. So you can test freely:

  1. Open the draft preview in a new tab from the Site page.
  2. Sign up as a test member, and try an upload. Try a file that is too large, too: the form should say so clearly before uploading.
  3. Try it on your phone, especially for video.

Test files and test accounts are discarded when you publish. Your real members' files are never touched.

4. Publish

Publish the site as usual. The live feature uses the same bucket and rules, now with real members.

Things to know

  • iPhone video. iPhones record in a format (HEVC) that many Windows and Android browsers play as sound with no picture. Nothing on your site converts video, so a good upload form refuses HEVC with instructions to switch the iPhone to Most Compatible. Converting it instead would need an outside service, which is your call.
  • iPhone photos in HEIC format don't display in most browsers. The upload form asks for JPEG, and iPhones usually convert automatically.
  • Usage. Storage and downloads count toward your backend's included monthly usage, and video uses it fastest.
  • Bigger files. If 50 MB per file is too small for your business, Willo support can raise the limit on request.

Related: Storage for your site's own uploads, Assets troubleshooting.