All projects

An early summarization prototype

Castela

A historical Flask-based experiment in text summarization.

I designed and built this project independently, using my own resources.

Explore the project

Public repository

Technical documentation

Archived Flask prototype. The application source and dependencies are preserved.

Technologies

  • Python
  • Flask
  • Summarization

01 / Context

The problem behind the project

An early prototype provided a small web surface for experimenting with summarization.

Castela is a small early experiment in turning a web page into a summary. It predates the later shared AI service and is intentionally shown as a prototype rather than being retroactively described as a complete AI platform.

02 / Implementation

Design and implementation

I explored summarization in a Flask application before the later shared AI-service work.

I built a Flask application that accepts a URL, downloads its HTML, extracts text with BeautifulSoup, runs the BART CNN summarization pipeline, and renders the summary back into the page. The retained implementation is a short synchronous request path, with model inference in the application process.

03 / Approach

Engineering decisions

Retain the experiment as history

The public source contains a Flask application and templates. Its historical scope is kept distinct from the current Mistify service.

04 / Evidence

Evidence and outcomes

The public application source directly shows the complete fetch → text extraction → summarization → template-render flow and its configured output-length bounds.

Source and technical notes

05 / Current scope

Where it stands

A historical Flask summarization prototype.

The prototype does not implement the durable queue, authenticated ingestion, source provenance, URL-fetch hardening, or long-document handling of a production editorial system. Its value here is the earlier experiment and the progression toward more explicit service boundaries.