Spec-Driven Development

CloudEasyFiles

A desktop cloud file explorer shaped by specs, architecture, and AI-assisted development.

This is a real software project created as a practical engineering experiment. It combines product design, architecture decisions, structured specs, and AI-assisted implementation to validate a spec-oriented development workflow in practice, using cloud storage providers as the real-world domain.

About

About the project

CloudEasyFiles is a desktop application for browsing and managing files across cloud storage providers through a unified interface.

The project focuses on structural navigation, central object listing, archival restore workflows, and a provider-aware architecture that simplifies usage without hiding real cloud limitations. AWS S3 and Azure Blob Storage are the initial supported providers, but the product is designed around cloud storage as a broader category.

CloudEasyFiles application screenshot

Engineering Case

Andre Luiz Pires Silva

A real-world case study

CloudEasyFiles is not presented only as a product. It is also an intentional technical experiment conducted by Andre Luiz Pires Silva, an experienced software developer with more than 15 years of experience across multiple languages, platforms, cloud environments, serverless systems, backend engineering, and software architecture.

This project is a practical case for exploring:

  • Spec-Driven Development
  • AI-assisted software development
  • Definition-first implementation flow

The goal is to validate this approach in a real project, with architecture docs, ADRs, feature specs, and implementation plans acting as the main source of truth.

Problem

Problem it solves

Cloud storage providers are powerful, but they are not always easy for ordinary users to work with directly. This is especially true for backup and archival scenarios, where files may be stored in low-cost tiers that are cheaper to keep but harder to retrieve and manage.

CloudEasyFiles aims to make these services more approachable by offering a clearer interface for browsing cloud storage, understanding availability states, requesting restores, tracking progress, and downloading files when they are ready, without forcing the user to navigate complex provider consoles and provider-specific terminology.

Process

How it was developed

  • Specs and ADRs were used as the primary source of truth.
  • Product and architecture concerns were documented before implementation.
  • AI tools such as ChatGPT and Codex were used as part of the workflow.
  • Implementation was guided by structured docs, not ad-hoc prompts only.

Capabilities

Main capabilities

  • Saved connections for cloud storage providers, initially AWS S3 and Azure Blob Storage
  • Structural sidebar navigation by connection and container
  • Central object browsing with virtual directories
  • Normalized availability states such as Available, Archived, and Restoring
  • Archival restore workflows and tracked downloads through optional local cache

Architecture

Architecture and product direction

The system is organized around a clean separation between UI, application orchestration, domain logic, provider adapters, and infrastructure. The core model stays provider-aware: it normalizes what improves usability, but it does not pretend that different cloud storage providers are identical. AWS S3 and Azure Blob Storage are the first implementations of that model.

Clean layering Provider adapters Cloud-first listing Virtual directories Local Filter Advanced Search

Docs

Documentation map