<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/we-ported-65-oss-projects-with-ai-xnzqidikb" -->

---
title: We Ported 65 OSS Projects With AI | daily.dev
description: An experiment rewrote 65 popular open-source projects onto the Akka platform using a spec-driven AI harness (Claude Sonnet and Opus) in 99.3 total hours. The...
canonical: https://daily.dev/posts/we-ported-65-oss-projects-with-ai-xnzqidikb
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: We Ported 65 OSS Projects With AI | daily.dev
og:description: An experiment rewrote 65 popular open-source projects onto the Akka platform using a spec-driven AI harness (Claude Sonnet and Opus) in 99.3 total hours. The...
og:url: https://daily.dev/posts/we-ported-65-oss-projects-with-ai-xnzqidikb
og:image: https://api.daily.dev/og/posts/XNZQidiKb.png
og:image:alt: We Ported 65 OSS Projects With AI
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# We Ported 65 OSS Projects With AI

**[Lightbend](https://daily.dev/sources/lightbend)** · 34 min read · 1 upvotes · 0 comments

## Summary

An experiment rewrote 65 popular open-source projects onto the Akka platform using a spec-driven AI harness (Claude Sonnet and Opus) in 99.3 total hours. The harness enforced structured specifications, exit conditions, and auditors covering serialization, security, workflows, and testing. Results: 57 of 65 ports improved on lines of code or performance, effort level mattered more than model choice for efficiency, and structured specs with typed, cited claims produced correct first-pass code while prose specs led to costly rework. Performance gains came mostly from replacing database calls with in-memory durable entities; LOC grew on small projects due to Akka's typed record requirements. The team is now productizing this as an '/akka:port' command within Akka Specify.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://akka.io/blog/we-ported-65-oss-projects>

## Questions this post answers

### Does using a low-effort setting with Claude models produce worse results than high-effort when generating production code?

No, low effort models were more efficient than high effort models while maintaining the same output accuracy, since ports were not considered done until all unit tests passed regardless of model or effort. Moving from low to high effort roughly doubled the composite efficiency score (steps, time, tokens), meaning higher effort mainly cost more without producing meaningfully more grounded results.

_Anyone tuning AI coding agent settings for cost versus quality can track findings like this on daily.dev._

### Why do AI-generated ports of Python or JavaScript projects onto Akka often end up with more lines of code than the original?

Lines of code increase when the source slice being replaced is small, because Akka's strongly-typed, event-sourced model requires explicit records such as a SomethingHappened event, a SomethingCommanded command, and a SomethingState record, plus state-transition code, where a scripting language would let a single mutating line suffice. For big projects this overhead is a rounding error, but for tiny projects it adds proportionally more code.

_Developers weighing framework tradeoffs for LOC and maintainability can follow this kind of analysis on daily.dev._

### What caused the 143,333x performance figure reported for the langgenius/dify port to be misleading?

That figure compared a cached in-memory read on the Akka port against a source code path that re-ran an actual LLM call, meaning the two sides measured entirely different amounts of work rather than a genuine like-for-like speed comparison. It is called out explicitly as not a valid apples-to-apples performance ratio despite appearing in the results table.

_Engineers scrutinizing benchmark claims before adopting a new backend runtime can find similar caveats on daily.dev._

## Similar posts on daily.dev

- [Akka Tests Spec-Driven AI Delivery Across 65 Open Source Projects](https://daily.dev/posts/akka-tests-spec-driven-ai-delivery-across-65-open-source-projects-geverlodz) · InfoQ · 1 upvotes · 0 comments
- [Introducing Akka Specify](https://daily.dev/posts/introducing-akka-specify-li6tbkgxc) · Lightbend · 1 upvotes · 0 comments
- [Learnings from 100K Lines of Rust with AI](https://daily.dev/posts/learnings-from-100k-lines-of-rust-with-ai-paclz7ko3) · Hacker News · 2 upvotes · 0 comments

---

Tags: [#architecture](https://daily.dev/tags/architecture), [#ai-coding](https://daily.dev/tags/ai-coding), [#claude](https://daily.dev/tags/claude), [#akka](https://daily.dev/tags/akka), [#spec-driven-development](https://daily.dev/tags/spec-driven-development)

[View this post on daily.dev](https://daily.dev/posts/we-ported-65-oss-projects-with-ai-xnzqidikb)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"We Ported 65 OSS Projects With AI","url":"https://daily.dev/posts/we-ported-65-oss-projects-with-ai-xnzqidikb","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/we-ported-65-oss-projects-with-ai-xnzqidikb"},"datePublished":"2026-09-03T11:20:21.715Z","dateModified":"2026-09-13T18:46:32.211Z","description":"An experiment rewrote 65 popular open-source projects onto the Akka platform using a spec-driven AI harness (Claude Sonnet and Opus) in 99.3 total hours. The...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/e10503c7747a13f82722280212984d90?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/e10503c7747a13f82722280212984d90?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Lightbend","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Lightbend","logo":"https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/lightbend","url":"https://daily.dev/sources/lightbend"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/we-ported-65-oss-projects-with-ai-xnzqidikb","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":1},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"architecture,ai-coding,claude,akka,spec-driven-development","timeRequired":"PT34M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Lightbend","item":"https://daily.dev/sources/lightbend"},{"@type":"ListItem","position":3,"name":"We Ported 65 OSS Projects With AI"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/we-ported-65-oss-projects-with-ai-xnzqidikb#faq","mainEntity":[{"@type":"Question","name":"Does using a low-effort setting with Claude models produce worse results than high-effort when generating production code?","acceptedAnswer":{"@type":"Answer","text":"No, low effort models were more efficient than high effort models while maintaining the same output accuracy, since ports were not considered done until all unit tests passed regardless of model or effort. Moving from low to high effort roughly doubled the composite efficiency score (steps, time, tokens), meaning higher effort mainly cost more without producing meaningfully more grounded results. Anyone tuning AI coding agent settings for cost versus quality can track findings like this on daily.dev."}},{"@type":"Question","name":"Why do AI-generated ports of Python or JavaScript projects onto Akka often end up with more lines of code than the original?","acceptedAnswer":{"@type":"Answer","text":"Lines of code increase when the source slice being replaced is small, because Akka's strongly-typed, event-sourced model requires explicit records such as a SomethingHappened event, a SomethingCommanded command, and a SomethingState record, plus state-transition code, where a scripting language would let a single mutating line suffice. For big projects this overhead is a rounding error, but for tiny projects it adds proportionally more code. Developers weighing framework tradeoffs for LOC and maintainability can follow this kind of analysis on daily.dev."}},{"@type":"Question","name":"What caused the 143,333x performance figure reported for the langgenius/dify port to be misleading?","acceptedAnswer":{"@type":"Answer","text":"That figure compared a cached in-memory read on the Akka port against a source code path that re-ran an actual LLM call, meaning the two sides measured entirely different amounts of work rather than a genuine like-for-like speed comparison. It is called out explicitly as not a valid apples-to-apples performance ratio despite appearing in the results table. Engineers scrutinizing benchmark claims before adopting a new backend runtime can find similar caveats on daily.dev."}}]}
```

