Portfolio Studio ✦

Your story, your own website.

← Back to the editor
Beginner guide · checked October 11, 2026

From your idea
to your live website.

Follow these steps to create your own portfolio and put it online with Cloudflare Pages. You do not need to write code, use GitHub, or install anything.

What you need

A browser, an internet connection, access to your email, and a Cloudflare account. A laptop or desktop is easiest for uploading files. A custom domain is optional; Cloudflare gives you a public pages.dev address.

Step 1

Open Portfolio Studio

Go to portfolio-studio-malik.pages.dev. This is the editor where you make your site. Leave it open while you work.

You can edit straight away. You do not need “Get offline template” to publish your own portfolio. That download is for keeping a copy of the editor on your computer.

You should see Profile, Projects, Writing and Notes on the left, and a live website preview on the right.

Step 2

Replace the examples with your own details

  1. In Profile, fill in your name, what you do, introduction, biography and contact details.
  2. Upload a profile photo if you want one. Use PNG, JPEG or WebP, smaller than 2 MB.
  3. Choose a colour theme. Under Your sections, turn off sections you do not need.
  4. Open Projects, Writing and Notes. Replace the sample entries or remove them. Use the Add button for a new entry.
  5. Check Include in website for every entry you want visitors to see. New entries start unchecked as drafts.

Use full links such as https://example.com. Article addresses use lowercase words and hyphens, such as my-first-article.

“Include in website” does not publish online.

It only includes that entry in your website download. Your content goes live after the Cloudflare upload in step 8.

Step 3

Check what visitors will see

Use the page selector above the preview to check Home, About, Contact and your visible sections. Open each article. Click Mobile to check the narrow layout.

Remove leftover examples and check spelling and contact details. The preview shows published entries only. If an error appears above it, fix the named field before exporting; the preview may still show an earlier valid version.

Your name and content should appear, and unfinished entries should be absent.

Step 4

Save your editable backup

Click Save backup. Your browser downloads my-portfolio-backup.json, usually to Downloads. Keep this file somewhere safe—you will need it when editing on another browser or computer.

The browser also tries to autosave. Clearing browser data can remove that saved copy, so download a backup after each editing session.

Keep the JSON backup private. It contains drafts and your editable content. It is not the file you upload to Cloudflare.

Step 5

Download the website you will publish

Click Download website. If a validation message appears, correct it and click again. Find my-portfolio-website.zip in your browser’s downloads or Downloads folder. Your browser may add a number to the filename after repeated downloads.

Keep this ZIP as a ZIP for the Cloudflare upload. To preview it offline, you can also extract a separate copy and open its index.html.

Choose the right download
FileWhat it is for
my-portfolio-website.zipUpload this to Cloudflare. It is your finished public website.
my-portfolio-backup.jsonKeep private. Open it in the editor to restore your editable work.
portfolio-template.zipThe offline editor. You do not upload this to publish your own portfolio.

You should now have both a backup JSON and a website ZIP. Only the website ZIP goes to hosting.

Step 6

Sign in to Cloudflare and verify your email

Open Open Cloudflare dashboard ↗ in a new tab. Sign in, or choose Sign up if you need an account.

If Cloudflare asks you to verify your email, open your inbox and click the link in its verification email. Check Spam or Junk if you cannot find it.

After verification, return to the dashboard and refresh. If “Verify your account” remains, open the dashboard in a new tab; if needed, sign out and sign back in with the same account. Continue when the verification prompt is gone.

You can use the provided address without buying a domain. You do not need to select an upgrade to follow this guide.

Step 7

Find the Pages upload screen

In the Cloudflare dashboard:

  1. Open Compute in the sidebar, then Workers & Pages.
  2. Choose Create application.
  3. If the page says Make something new, look near the bottom for Continue to Pages.
  4. Under Drag and drop your files, choose Get started.

Cloudflare sometimes changes menu labels. Look for the Pages workflow with Direct Upload or Drag and drop your files. The screen should ask for a project name and website assets. This route does not need a GitHub repository or build command.

The heading should say “Deploy a site by uploading your project,” or similar.

Step 8

Name your site, upload the ZIP, and deploy

  1. Enter a project name, such as jane-doe-portfolio. Use lowercase letters, numbers and hyphens. Choose your own name; you do not need to reuse the Portfolio Studio name.
  2. Click Create project. Cloudflare shows the address it will use. If the name is unavailable, choose another.
  3. In the upload area, click file or drag in my-portfolio-website.zip. Select the website ZIP from step 5.
  4. Wait until Cloudflare says all files were successfully uploaded. Do not continue while it is preparing the upload or showing an error.
  5. Click Deploy site and wait for the success message.

If you accidentally selected the backup or offline template, choose Remove all and upload your website ZIP instead.

Success means Cloudflare shows “Your project is deployed” and a link ending in pages.dev.

Step 9

Open your site and share its actual link

Click the address Cloudflare shows, for example https://jane-doe-portfolio.pages.dev. That is an example—copy your actual address from the success page.

Check the homepage, menu, About page, projects, articles and Contact page. Try it on your phone or in a private browser window. Visitors should see your website without signing in to Cloudflare.

Share this public address with friends. The dash.cloudflare.com dashboard address is for managing the site, not for visitors.

Optional: add a custom domain later from your project’s Custom domains area. Your pages.dev link is enough to get started.

Step 10

Update the same site later

  1. Return to Portfolio Studio. If your work is missing, choose Open backup and select your latest my-portfolio-backup.json.
  2. Edit, review and download a new backup and website ZIP.
  3. In Cloudflare, open Workers & Pages and select your existing project.
  4. Choose Create a new deployment. Select Production if asked; a Preview deployment is for checking changes and does not replace the main site.
  5. Upload the complete new website ZIP, wait for the upload to finish, and choose Save and Deploy or Deploy site.
  6. Refresh your public site to check the update. Your main site address stays the same.

Keep using the same Cloudflare project for updates. A complete new deployment also removes pages you left out of the latest website export.

Troubleshooting

Find your problem here

I uploaded a file, but I see the editor instead of my portfolio

You probably uploaded portfolio-template.zip instead of your website export. Return to Portfolio Studio, click Download website, then deploy my-portfolio-website.zip to your existing project.

My ZIP is missing, or nothing downloaded

Check the editor’s status message for an invalid field. Open the browser’s downloads list and check blocked downloads. Click Download website again after fixing the problem. On a phone, also check the Files app or your browser’s Downloads folder.

Cloudflare keeps asking me to verify my account

Use the link from the latest Cloudflare email and check it confirms success. Return in a new dashboard tab. If the prompt remains, sign out and sign in again with the same email. Account verification must finish before uploading.

I cannot find Pages, or it asks me to connect GitHub

Go back to Workers & Pages → Create application. Choose Continue to Pages if shown. Select Get started under Drag and drop your files, rather than the Git repository option.

Cloudflare shows an upload error or a 404 page

Use a fresh website ZIP from Download website. Its index.html must be at the ZIP’s root, not inside an extra folder. Upload the ZIP directly rather than manually rearranging its files. If Cloudflare flags an oversized asset, remove the upload and upload a complete corrected ZIP.

My projects or articles are missing

In the editor, check that the section is shown in Profile and each entry has Include in website checked. Download and deploy a new website ZIP after correcting those settings.

My changes are saved in the editor but not online

Saving a backup or including an entry does not update hosting. You must download a fresh website ZIP and make a new Production deployment. Refresh the public site after deployment.

I lost my editable work

Open your latest backup JSON in the editor. Editor storage is separate for each browser, device and website address. An exported website ZIP cannot be imported as an editable backup.