Simple Showcase (SSC) Website Plan

34 views
Skip to first unread message

Liberty Lover

unread,
Dec 4, 2025, 7:24:57 AM (17 hours ago) Dec 4
to Eiffel Users
It's coming ... wait for it ... wait ........

claude_eiffel_op_docs/SIMPLE_SHOWCASE_CONTENT.md at main · ljr1981/claude_eiffel_op_docs

Let's see how fast AI+Human+DBC+Eiffel actually is, right?

Liberty Lover

unread,
Dec 4, 2025, 8:36:51 AM (16 hours ago) Dec 4
to Eiffel Users
For those wondering what this looks like, here is a video of me interacting with Claude code at the start of simple_showcase:

https://youtu.be/pbLIyEaB9uQ?si=A9B1tL4MRS9FngVl

Liberty Lover

unread,
Dec 4, 2025, 10:11:12 AM (14 hours ago) Dec 4
to Eiffel Users
Phase 1 Milestone Complete - We have a landing page!! (The Eagle has landed!)

https://youtu.be/aKSu0kmdiGA

There are some interesting matters along the way. You can scroll through the video and see the interactions. Along the way, I realized that I could not only ask Claude to wear different "hats" but that as an operator/user, I could do likewise. So, in here, I ask Claude to treat me as a noob-dev who literally knows nothing and Claude needs to explain what it has done, where to look, and so on to the noob-dev so they can explore the generated code, understand it, ask questions, or even make changes and report that back to Claude as a pair-programming session (which this is).

Enjoy!!

Liberty Lover

unread,
Dec 4, 2025, 1:00:32 PM (11 hours ago) Dec 4
to Eiffel Users
Alright ... zero to hero ... 

Simple Showcase

  Building a Showcase Site for Eiffel + AI: A Live Development Story

  In one session today, we built and deployed a complete marketing/showcase website for Eiffel + AI development—entirely in Eiffel, using simple_htmx and simple_alpine libraries. It's live now on GitHub Pages:

  https://ljr1981.github.io/simple_showcase/

  The Project

  The goal: Create a compelling showcase site that demonstrates what's possible when you combine Eiffel's Design by Contract with AI-assisted development. Not just talk about it—show it by building the site itself this way.

  What We (have) Built Today (so far ...)

  A complete single-page application with 11 sub-pages:

  - Landing page with 9 scroll-animated sections (hero, recognition, problem statement, the unlock, evidence grid, and more)
  - 11 deep-dive sub-pages: Get Started, Portfolio, Design by Contract, Workflow, Competitive Analysis, Business Case, Why Eiffel, Probable to Provable, The Old Way, What AI Changes

  Technical stack—100% Eiffel:
  - simple_htmx for fluent HTML generation
  - simple_alpine for Alpine.js interactivity (scroll animations, hamburger menu, transitions)
  - simple_web for the HTTP server
  - TailwindCSS via CDN for styling

  Key features:
  - Smooth scroll-triggered fade-in animations on all sections
  - Responsive hamburger menu with slide-out navigation overlay
  - Static site generator that outputs to /docs for GitHub Pages deployment
  - Clean component architecture: sections, pages, shared helpers all in separate classes

  The Development Process

  This is where it gets interesting for the Eiffel community.

  We started with a content plan and built iteratively. The AI (Claude) generated code, but the Eiffel compiler and contracts caught errors immediately. The cycle was:

  1. Human direction: "Build a hero section with these elements"
  2. AI generation: Code produced in seconds
  3. Compiler feedback: Type errors caught instantly
  4. Contract verification: Postconditions like has_hero_content: Result.has_substring ("Eiffel") verified output
  5. Iteration: Fix, verify, move on

  When we hit the GitHub Pages deployment, we encountered a classic web deployment issue: absolute URLs (/get-started) don't work when your site is hosted at a subdirectory (/simple_showcase/). The fix required changing ~50 internal links across 14 files from absolute to relative paths. With AI assistance, this took about 10 minutes—including recompilation and redeployment.

  What's Live Now (GitHub Pages)

  URL: https://ljr1981.github.io/simple_showcase/

  This is the static HTML version generated by our SSC_SITE_GENERATOR class. Every page is pre-rendered to /docs and served by GitHub Pages. No server required.

  Source code: https://github.com/ljr1981/simple_showcase

  You can clone it, compile it, run the tests, and see exactly how it's built.

  What's Coming (Oracle Cloud Deployment)

  Later today, we'll deploy the full dynamic version to Oracle Cloud. This version runs the actual Eiffel HTTP server (SSC_SERVER), serving pages dynamically. Same content, but demonstrating Eiffel as a backend web server.

  The Numbers

  - 11 pages generated
  - 9 landing page sections with individual animations
  - ~32KB landing page (reasonable for a feature-rich SPA)
  - Development time: One focused session
  - Lines of Eiffel: The showcase itself + all supporting libraries

  For the Skeptics

  Yes, the site makes bold claims about productivity. But here's the thing: the site itself is evidence. We built a complete, polished, animated web application in Eiffel in one session. The code is on GitHub. Clone it. Read it. Run it.

  The libraries it depends on (simple_htmx, simple_alpine, simple_web, simple_json, simple_sql, etc.) were all built in the past few weeks using the same approach.

  Try It Yourself

  1. Visit the live site: https://ljr1981.github.io/simple_showcase/
  2. Browse the source: https://github.com/ljr1981/simple_showcase
  3. Check out the supporting libraries:
    - https://github.com/ljr1981/simple_htmx
    - https://github.com/ljr1981/simple_alpine
    - https://github.com/ljr1981/simple_web

  Feedback welcome. This is what Eiffel + AI looks like in 2025.

  —Larry (with Claude)

Chris Tillman

unread,
Dec 4, 2025, 1:17:39 PM (11 hours ago) Dec 4
to eiffel...@googlegroups.com
a. ma. zing.

--
You received this message because you are subscribed to the Google Groups "Eiffel Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to eiffel-users...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/eiffel-users/03acd76a-0e96-49e3-b465-d732d581e91an%40googlegroups.com.


--
Chris Tillman
Developer

an...@eiffel.com

unread,
Dec 4, 2025, 4:20:03 PM (8 hours ago) Dec 4
to eiffel...@googlegroups.com

Thank you Larry. I just did the following post on LinkedIn.

 

A Challenge to the Software Industry — Here’s What Eiffel + AI Just Did in One Session


Let’s be honest: software development today is collapsing under its own weight.
AI is generating code faster than teams can review, test, or even understand.
Framework stacks get thicker. Outages get more frequent. Reliability keeps dropping.

The industry keeps pretending this is normal.

So here’s a challenge.

Today, using Eiffel’s Design by Contract combined with AI assistance, we built — in one focused session — a complete, animated, multi-page web application. Not a mockup. Not a prototype. A fully generated and deployed site, live right now:

Live demo:
https://ljr1981.github.io/simple_showcase/
Source:
https://github.com/ljr1981/simple_showcase

The whole thing is written in 100% Eiffel, built with:

  • simple_htmx
  • simple_alpine
  • simple_web
  • Tailwind via CDN

Static site generator included. GitHub Pages deployment included.
All done in one sitting.

Why this matters
AI can produce code at superhuman speed.
What it cannot do is guarantee correctness.
And that’s exactly where Eiffel changes the game.

Every AI-generated component went through:

  • Compiler checks that rejected ambiguity instantly
  • Contracts that validated output and structure
  • Iterative corrections driven by verifiable signals, not guesswork

This is the loop the industry is missing.
Teams are letting AI pour code into brittle frameworks that were never designed to be verified. That’s why outages keep happening.

A concrete example:
GitHub Pages broke all absolute links.
Fixing ~50 links across 14 files — normally tedious and error-prone — took ~10 minutes.
AI proposed the edits. Eiffel verified them. Done.

By the numbers:

  • 11 pages
  • 9 landing-page animated sections
  • ~32 KB landing page
  • One development session
  • All code public

If you think this is impossible, inspect the repo.
Clone it. Read it. Break it.
Everything is there — the generator, the site, the libraries.

The question isn’t whether Eiffel + AI can deliver.
It’s why the rest of the industry is still comfortable shipping software on foundations that can’t even guarantee their own correctness.

If you’re building on shifting sand, AI will only drown you faster.
If you’re building on Eiffel, AI becomes a force multiplier.

This is a challenge to every team, CTO, architect, and skeptic:
Look at the evidence and explain why the future shouldn’t look like this.

Feedback welcome.

Eric Bezault

unread,
Dec 4, 2025, 4:21:07 PM (8 hours ago) Dec 4
to eiffel...@googlegroups.com, Liberty Lover
Hi Larry,

Very impressive result.

> When we hit the GitHub Pages deployment, we encountered a classic web
> deployment issue: absolute URLs (/get-started) don't work when your site
> is hosted at a subdirectory (/simple_showcase/). The fix required
> changing ~50 internal links across 14 files from absolute to relative
> paths. With AI assistance, this took about 10 minutes—including
> recompilation and redeployment.

Somehow I was able to browse the page which had this absolute URLs.
The page looked very nice, but the links did not work. So I refreshed
the page in my browser. Now the links work, but titles containing
two lines are now not displayed as nicely as before. See screenshot
attached.

--
Eric Bezault
mailto:er...@gobosoft.com
http://www.gobosoft.com


On 04/12/2025 19:00, Liberty Lover wrote:
> Alright ... zero to hero ...
>
> Simple Showcase <https://ljr1981.github.io/simple_showcase/>
> https://youtu.be/aKSu0kmdiGA <https://youtu.be/aKSu0kmdiGA>
>
> There are some interesting matters along the way. You can scroll
> through the video and see the interactions. Along the way, I
> realized that I could not only ask Claude to wear different "hats"
> but that as an operator/user, I could do likewise. So, in here, I
> ask Claude to treat me as a noob-dev who literally knows nothing and
> Claude needs to explain what it has done, where to look, and so on
> to the noob-dev so they can explore the generated code, understand
> it, ask questions, or even make changes and report that back to
> Claude as a pair-programming session (which this is).
>
> Enjoy!!
>
> On Thursday, December 4, 2025 at 8:36:51 AM UTC-5 Liberty Lover wrote:
>
> For those wondering what this looks like, here is a video of me
> interacting with Claude code at the start of simple_showcase:
>
> https://youtu.be/pbLIyEaB9uQ?si=A9B1tL4MRS9FngVl <https://
> youtu.be/pbLIyEaB9uQ?si=A9B1tL4MRS9FngVl>
>
> On Thursday, December 4, 2025 at 7:24:57 AM UTC-5 Liberty Lover
> wrote:
>
> It's coming ... wait for it ... wait ........
>
> claude_eiffel_op_docs/SIMPLE_SHOWCASE_CONTENT.md at main ·
> ljr1981/claude_eiffel_op_docs <https://github.com/ljr1981/
> claude_eiffel_op_docs/blob/main/SIMPLE_SHOWCASE_CONTENT.md>
>
> Let's see how fast AI+Human+DBC+Eiffel actually is, right?
>
> --
> You received this message because you are subscribed to the Google
> Groups "Eiffel Users" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to eiffel-users...@googlegroups.com <mailto:eiffel-
> users+un...@googlegroups.com>.
> To view this discussion visit https://groups.google.com/d/msgid/eiffel-
> users/03acd76a-0e96-49e3-b465-d732d581e91an%40googlegroups.com <https://
> groups.google.com/d/msgid/eiffel-users/03acd76a-0e96-49e3-b465-
> d732d581e91an%40googlegroups.com?utm_medium=email&utm_source=footer>.


showcase_bug.png

Liberty Lover

unread,
Dec 4, 2025, 4:36:12 PM (8 hours ago) Dec 4
to eiffel...@googlegroups.com
Hi Annie!

Excellent. In the meantime, I added:

  - ✅ Animation polish (staggered reveals, card entrances, hover effects)
  - ✅ Security Hat added to HATS.md
  - ✅ Security review & hardening (log masking, input limits, .gitignore)

I am now ready to deploy to Oracle as soon as I have a domain name. What remains is just normal deployment mechanics. I will work with Claude to get this done and handle any nuances that arise.

Best,

Larry

Liberty Lover

unread,
Dec 4, 2025, 5:09:47 PM (7 hours ago) Dec 4
to Eiffel Users
Took 10 minutes to turn it into a PWA Phone App ...

● PWA is ready. Summary of what was added:

  PWA Files:
  - docs/manifest.json - App manifest (name, icons, theme)
  - docs/sw.js - Service worker (caches all pages for offline)
  - docs/icon-192.png - Small icon
  - docs/icon-512.png - Large icon
  - docs/icon.svg - Source SVG

  HTML Changes:
  - Manifest link in <head>
  - Theme color meta tag
  - Apple touch icon link
  - Service worker registration script

  All 12 pages updated (landing + 11 sub-pages)

Once GitHub Pages updates (usually 1-2 minutes), you can:
  1. Visit https://ljr1981.github.io/simple_showcase on your phone
  2. iOS: Share → "Add to Home Screen"
  3. Android: Menu → "Install app" or banner prompt

  The site will have its own icon and work offline.

So, just go to the site on your phone browser:

  1. Open Safari (iOS) or Chrome (Android) on your phone
  2. Go to: https://ljr1981.github.io/simple_showcase
  3. Browse the site normally

  Then to "install" it:

  iOS (Safari):
  - Tap the Share button (box with arrow)
  - Scroll down, tap "Add to Home Screen"
  - Tap "Add"

  Android (Chrome):
  - You may see a banner "Add Simple Showcase to Home Screen" - tap it
  - Or: tap the 3-dot menu → "Install app" or "Add to Home Screen"

  After that, you'll have an "SSC" icon on your home screen that opens the site in standalone mode (no browser chrome) and works offline.

lar...@eiffel.com

unread,
Dec 4, 2025, 5:10:24 PM (7 hours ago) Dec 4
to eiffel...@googlegroups.com

Liberty Lover

unread,
Dec 4, 2025, 5:30:36 PM (7 hours ago) Dec 4
to Eiffel Users
Eric

I see it now. I totally missed your point. Sorry. Getting it fix this instant. Literally! HA!

Liberty Lover

unread,
Dec 4, 2025, 5:34:02 PM (7 hours ago) Dec 4
to Eiffel Users
Eric, 

Fixed (I think). It will take a couple of minutes for Github to cycle. Then we will ALL see if the fix worked.

----

● Found it. The issue is on line 41 - font_section_headline uses viewport-based sizes (4vw, 5vw) but has no line-height class.
  When text wraps to multiple lines, the default line-height causes overlap.

  I'll also check font_hero_headline on line 38 which has the same issue. Let me add leading-tight to both classes to prevent
  line overlap:

● Update(src\core\ssc_shared.e)
  ⎿  Updated src\core\ssc_shared.e with 2 additions and 2 removals
       35
       36    feature -- Typography Classes
       37
       38 -    font_hero_headline: STRING = "text-4xl sm:text-5xl md:text-[6vw] lg:text-[8vw] font-light tracking-[-0.02em]"
       38 +    font_hero_headline: STRING = "text-4xl sm:text-5xl md:text-[6vw] lg:text-[8vw] font-light tracking-[-0.02em]
          +   leading-tight"
       39          -- Responsive hero headline: 4xl on mobile, scales up to 8vw on desktop
       40
       41 -    font_section_headline: STRING = "text-2xl sm:text-3xl md:text-[4vw] lg:text-[5vw] font-medium"
       41 +    font_section_headline: STRING = "text-2xl sm:text-3xl md:text-[4vw] lg:text-[5vw] font-medium leading-tight"
       42          -- Responsive section headline: 2xl on mobile, scales up to 5vw on desktop
       43
       44      font_body: STRING = "text-base sm:text-lg leading-relaxed"

● Now let me compile and regenerate the static site:

...

● Fixed. Added leading-tight to both font_hero_headline and font_section_headline classes. This Tailwind class sets line-height:
  1.25, which prevents the overlapping text lines Eric reported.

  The fix is applied to all 12 pages since they all inherit from SSC_SHARED. Want me to commit and push?

> yes, commit push

...

● Done. Pushed the fix for Eric's bug - added leading-tight to both headline font classes. GitHub Pages should update in a minute
   or two.


Eric Bezault

unread,
Dec 4, 2025, 5:49:57 PM (6 hours ago) Dec 4
to Liberty Lover, Eiffel Users
On 04/12/2025 22:45, Eric Bezault wrote:
> > I noted it right away as well. Github has some nuances and it has been
> > corrected. Try again.
>
> Still does not work for me.
>
> Also, in https://ljr1981.github.io/simple_showcase/get-started/
>
> - this link does not work: https://github.com/ljr1981/reference_docs
>   did you mean: https://github.com/ljr1981/claude_eiffel_op_docs
>
>   Perhaps you can ask Claude to try to follow all links and report
>   those which fail.

There is the same broken link in page:
https://ljr1981.github.io/simple_showcase/portfolio/

Also, are all subpages reachable (directly or indirectly)
from the root page? I cannot see how to navigate to:
https://ljr1981.github.io/simple_showcase/why-eiffel/
(other than by typing the URL in my browser).

--
Eric Bezault

Liberty Lover

unread,
Dec 4, 2025, 5:51:23 PM (6 hours ago) Dec 4
to eiffel...@googlegroups.com
I think it "fixed it" the wrong direction! HA! ... trying once again!

To unsubscribe from this group and stop receiving emails from it, send an email to eiffel-users...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/eiffel-users/da54e3d1-0f6f-4a5d-9ba2-e67ba73fb4e6n%40googlegroups.com.

Eric Bezault

unread,
Dec 4, 2025, 5:52:06 PM (6 hours ago) Dec 4
to eiffel...@googlegroups.com, Liberty Lover
Still does not work for me.
I'm on Firefox.

It was displaying nicely before Claude fixed the absolute
URLs issue.
> http://www.gobosoft.com <http://www.gobosoft.com>
>
>
> On 04/12/2025 19:00, Liberty Lover wrote:
> > Alright ... zero to hero ...
> >
> > Simple Showcase <https://ljr1981.github.io/simple_showcase/
> <https://ljr1981.github.io/simple_showcase/>>
> >
> >   Building a Showcase Site for Eiffel + AI: A Live
> Development Story
> >
> >   In one session today, we built and deployed a complete
> marketing/
> > showcase website for Eiffel + AI development—entirely in
> Eiffel, using
> > simple_htmx and simple_alpine libraries. It's live now on
> GitHub Pages:
> >
> > https://ljr1981.github.io/simple_showcase/ <https://
> ljr1981.github.io/simple_showcase/>
> >   URL: https://ljr1981.github.io/simple_showcase/ <https://
> ljr1981.github.io/simple_showcase/>
> simple_showcase/ <https://ljr1981.github.io/simple_showcase/>
> >   2. Browse the source: https://github.com/ljr1981/
> simple_showcase <https://github.com/ljr1981/simple_showcase>
> >   3. Check out the supporting libraries:
> >     - https://github.com/ljr1981/simple_htmx <https://
> github.com/ljr1981/simple_htmx>
> >     - https://github.com/ljr1981/simple_alpine <https://
> github.com/ljr1981/simple_alpine>
> >     - https://github.com/ljr1981/simple_web <https://
> github.com/ljr1981/simple_web>
> youtu.be/pbLIyEaB9uQ?si=A9B1tL4MRS9FngVl> <https://
> > youtu.be/pbLIyEaB9uQ?si=A9B1tL4MRS9FngVl <http://youtu.be/
> pbLIyEaB9uQ?si=A9B1tL4MRS9FngVl>>
> >
> > On Thursday, December 4, 2025 at 7:24:57 AM UTC-5 Liberty Lover
> > wrote:
> >
> > It's coming ... wait for it ... wait ........
> >
> > claude_eiffel_op_docs/SIMPLE_SHOWCASE_CONTENT.md at main ·
> > ljr1981/claude_eiffel_op_docs <https://github.com/ljr1981/
> <https://github.com/ljr1981/>
> > claude_eiffel_op_docs/blob/main/SIMPLE_SHOWCASE_CONTENT.md>
> >
> > Let's see how fast AI+Human+DBC+Eiffel actually is, right?
> >
> > --
> > You received this message because you are subscribed to the
> Google
> > Groups "Eiffel Users" group.
> > To unsubscribe from this group and stop receiving emails from
> it, send
> > an email to eiffel-users...@googlegroups.com <mailto:eiffel-
> > users+un...@googlegroups.com>.
> > To view this discussion visit https://groups.google.com/d/
> msgid/eiffel- <https://groups.google.com/d/msgid/eiffel->
> > users/03acd76a-0e96-49e3-b465-
> d732d581e91an%40googlegroups.com <http://40googlegroups.com>
> <https://
> > groups.google.com/d/msgid/eiffel-users/03acd76a-0e96-49e3-
> b465- <http://groups.google.com/d/msgid/eiffel-
> users/03acd76a-0e96-49e3-b465->
> > d732d581e91an%40googlegroups.com?
> utm_medium=email&utm_source=footer <http://40googlegroups.com?
> utm_medium=email&utm_source=footer>>.
>
>
> --
> You received this message because you are subscribed to the Google
> Groups "Eiffel Users" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to eiffel-users...@googlegroups.com <mailto:eiffel-
> users+un...@googlegroups.com>.
> To view this discussion visit https://groups.google.com/d/msgid/eiffel-
> users/da54e3d1-0f6f-4a5d-9ba2-e67ba73fb4e6n%40googlegroups.com <https://
> groups.google.com/d/msgid/eiffel-users/da54e3d1-0f6f-4a5d-9ba2-
> e67ba73fb4e6n%40googlegroups.com?utm_medium=email&utm_source=footer>.



Liberty Lover

unread,
Dec 4, 2025, 6:05:04 PM (6 hours ago) Dec 4
to Eiffel Users
scroll down a little and the Hamburger will show in the upper-left ... it might be poorly colorized ... on my browser it is awful, on my phone and iPad it looks great. Not sure what to make of that, but these are web-device woes faced by all! Right? I will see if I can address it. It is annoying.

Liberty Lover

unread,
Dec 4, 2025, 6:16:06 PM (6 hours ago) Dec 4
to eiffel...@googlegroups.com
Fresh hamburger ... white lines on dark button.

it's also a sizing issue:

image.png
vs widening out the viewport ...
image.png
It's the responsive bits ...

To unsubscribe from this group and stop receiving emails from it, send an email to eiffel-users...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/eiffel-users/4386a87e-fa1b-4bf6-acab-baa3d06dd311%40gobosoft.com.

"João M. Rocha"

unread,
Dec 4, 2025, 7:16:52 PM (5 hours ago) Dec 4
to eiffel...@googlegroups.com
Larry, this is entertaining! I'd like to see where this is going.

Would Claude be up to the challenge of making the code snippet in "What if the code could verify itself?" an interactive component we could run and see its output? Or perhaps, because of performance reasons, have a link "Try the playground" like the Ocaml and Typescript pages have?
This would actually come in handy since the web version of Autoproof hosted at MIT seems to be down. You could even take advantage of some of the exercises published here https://se.inf.ethz.ch/research/autoproof/tutorial/. 

Check the `reference_docs` link in the "Portfolio" section because it seems to be broken. I believe Claude meant `claude_eiffel_op_docs`, pointing to https://github.com/ljr1981/claude_eiffel_op_docs.

-- 
You received this message because you are subscribed to the Google Groups "Eiffel Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to eiffel-users...@googlegroups.com.

Eric Bezault

unread,
Dec 4, 2025, 7:27:03 PM (5 hours ago) Dec 4
to eiffel...@googlegroups.com
On 05/12/2025 0:19, "João M. Rocha" wrote:
> Check the `reference_docs` link in the "Portfolio" section because it
> seems to be broken. I believe Claude meant `claude_eiffel_op_docs`,
> pointing to https://github.com/ljr1981/claude_eiffel_op_docs.

I already mentioned that to Larry. The same link is also broken in:
https://ljr1981.github.io/simple_showcase/get-started/

I had suggested:

> Perhaps you can ask Claude to try to follow all links
> and report those which fail.

I also have this question which has not been answered yet:

> Also, are all subpages reachable (directly or indirectly)
> from the root page? I cannot see how to navigate to:
> https://ljr1981.github.io/simple_showcase/why-eiffel/
> (other than by typing the URL in my browser).

And the display issue with titles made up of 2 lines is still there,
but only on Firefox apparently. It is shown nicely in Chrome.
But I know that it can be displayed nicely in Firefox as well because
I saw it before Claude fixed the absolute URLs issue.

Eric Bezault

unread,
Dec 4, 2025, 7:52:49 PM (4 hours ago) Dec 4
to eiffel...@googlegroups.com, Liberty Lover
Hi Larry,

I followed your journey with Claude this week, reading daily summary
every morning (I'm in Europe). This is impressive, and your showcase
application is a very good advertisement for Eiffel.
In this material you (or Claude, or both, I don't know) wrote:

> IDE lock-in
> • No VS Code, no JetBrains (for now)

Note that I'm currently working on a VS Code extension for Eiffel,
and its associated Eiffel language server written in Eiffel:

https://marketplace.visualstudio.com/items?itemName=gobosoft.gobo-eiffel

If anyone wants to give it a try while I'm still adding
functionalities...


You also wrote:

> Can't hire Eiffel developers
> • Reality: Existing community (dozens to hundreds)

For what it's worth, I'm available as an Eiffel expert. Not necessarily
full time, so that I can let several projects benefit from my Eiffel
skills. So if anyone wants to hire me, feel free to contact me.

Liberty Lover

unread,
Dec 4, 2025, 7:55:43 PM (4 hours ago) Dec 4
to Eiffel Users

Liberty Lover

unread,
Dec 4, 2025, 8:00:29 PM (4 hours ago) Dec 4
to Eiffel Users
Answer to the Autoproof question:

● That's great feedback! Here's my take:

  The short answer: Yes, but with significant caveats.

  The challenge: Eiffel isn't JavaScript - it's a compiled language. Unlike TypeScript or OCaml which have browser-based interpreters/transpilers, Eiffel requires:
  1. The EiffelStudio compiler
  2. A C compiler backend
  3. Native execution

  Options to consider:

  1. Server-side playground (like Go Playground)
    - Run EiffelStudio on your Oracle server
    - Accept code via API, compile, execute, return output
    - Security concerns: sandboxing user code, resource limits, timeouts
    - This is doable but substantial backend work
  2. Pre-recorded demos
    - Show the code, then animate/reveal the expected output
    - "Click to see what happens when b=0" → shows contract violation
    - No real compilation, but demonstrates the concept
    - Much simpler to implement
  3. WASM compilation (long-term)
    - Theoretically possible to compile Eiffel → WASM
    - Would require significant tooling work
    - Not practical short-term
  4. AutoProof integration
    - If ETH's AutoProof could be self-hosted, that would be powerful
    - Shows formal verification, not just runtime contracts
    - But depends on their availability

  My recommendation: Start with option 2 (animated/interactive demos showing contract behavior) - it's achievable now and demonstrates the value proposition. Then consider option 1 (server playground) for Oracle deployment later.

Liberty Lover

unread,
Dec 4, 2025, 8:05:23 PM (4 hours ago) Dec 4
to Eiffel Users
Wow, Eric! 

If you could get Eiffel operational through VS Code that would be a huge win. Claude code GUI-version does have a VS Code tool. I have not used it, so I don't know how it works. I am on the console version and there is no VS Code here. Still, that caters to the workflow where the programmer is doing the lions share of the work and the AI is merely a tag-along. Again, Claude readily admits that without my additional guidance docs and steerage, it would only operate at about 60% "real" -vs- hallucination or even dangerous code. As you suggested in an earlier comment on another thread, that notion is very scary. I would not use an AI at such a low level of confidence.

Liberty Lover

unread,
Dec 4, 2025, 8:19:52 PM (4 hours ago) Dec 4
to Eiffel Users
I added a step-demo:

● Done! The interactive stepped demo is built. Here's what it does:

  8 steps:
  1. Highlight function signature - "A simple division function"
  2. Highlight precondition - "caller promises b will be positive"
  3. Highlight do block - "just one line of code"
  4. Highlight postcondition - "function guarantees correct math"
  5. Show valid call divide(10, 2)
  6. Show precondition check passing
  7. Show result with postcondition verified
  8. Show invalid call divide(10, 0) with contract violation

  Features:
  - Code lines highlight as you step through
  - Execution simulation panel appears for steps 5-8
  - Color-coded explainer text matches the contract type
  - Back/Next/Reset navigation buttons
  - Step counter (0/8, 1/8, etc.)
  - Pulsing red warning on contract violation

Liberty Lover

unread,
Dec 4, 2025, 8:34:15 PM (4 hours ago) Dec 4
to Eiffel Users
The problem is that the step-demo requires the Eiffel exe. You all will have to wait until tomorrow when I push it out to Oracle and get a live server behind it.

Liberty Lover

unread,
Dec 4, 2025, 8:40:04 PM (4 hours ago) Dec 4
to Eiffel Users
If the stepper is not working, then try:

● The content is there on GitHub. Could be browser caching or the service worker serving old content. Try:

  1. Hard refresh: Ctrl+Shift+R
  2. Or clear service worker: DevTools (F12) → Application → Service Workers → Unregister → then refresh
  3. Or try incognito/private window

  The service worker we added for PWA caches pages aggressively. That's likely why local server shows new content but GitHub Pages shows cached.

● So the service worker was caching the old pages. Good to know for future - after pushing updates, users may need to
  refresh or the service worker needs to update its cache.

  The three interactive demos are now live:
  - Landing page - divide function (8 steps)
  - Design by Contract page - bank account (10 steps)
  - Probable to Provable page - incomplete contracts (6 steps)

Liberty Lover

unread,
Dec 4, 2025, 8:42:40 PM (4 hours ago) Dec 4
to Eiffel Users
And the PWA service workers were also holding on to the old code with the poor sizing/positioning of the text that Eric noticed. So, Claude actually did fix the problem but I couldn't see it because of the PWA caching. ... live-n-learn
Reply all
Reply to author
Forward
0 new messages