As I mentioned in the vuzon post, the Cloudflare dashboard has so many buttons and options that navigating it is pretty clunky (especially on mobile).

I created this because there are days when you just want to upload a simple pilot project, or hit the "redeploy" button without having to navigate through five menus and three sub-tabs just to find the right project (not to mention having to log in to your Cloudflare account).

Update: I have implemented the deletion of deployments, either by selecting them from the history or by deleting ALL of them (except for the current production deployment).

I have implemented the official script provided by Cloudflare at this link. They provide this script because there are several issues when deleting a project with a large number of deployments.

EasyPages is a visual wrapper for the Cloudflare API—scoped only to Cloudflare Pages permissions—that allows you to manage your static sites from your own server with a clean, distraction-free interface.

Don't expect a massive configuration setup, as that isn't the goal of the project. The aim is to handle just the bare essentials:

  • Project Visualization: List all your Cloudflare Pages sites.
  • Create New Projects: Basic option to create new projects and upload files locally.
  • Deployments: Manually trigger deployments from the interface.
  • Domains: View associated domains and add new ones.
  • Configuration: Update build settings.

As always, you can find all the installation and configuration information in the repo (Kernel-Nomad/EasyPages).


Quick install using docker compose

1) Create and configure the .env

# https://dash.cloudflare.com/profile/api-tokens
CF_API_TOKEN=xxxxx
CF_ACCOUNT_ID=xxxxx

AUTH_USER=admin
AUTH_PASS=password123

SESSION_SECRET=2gcs1br2kf8dasjk8

2) Create docker-compose.yml

services:
  easypages:
    container_name: easypages
    image: ghcr.io/kernel-nomad/easypages
    restart: unless-stopped
    ports:
      - "8002:8002"
    env_file:
      - .env
    volumes:
      - ./sessions:/app/sessions

Once it’s up, you’ll be able to access the interface at http://localhost:8002 (or your server IP) and log in with the username and password you set in the .env.