r/dartlang

Is becoming a contributor realistic?

Anyone here that's a contributor? I assume that it is almost entirely developed internally at Google, but I would love to learn more about developing programming languages and compilers, and I want to find an open source project to contribute to once I've done some more studying and prep work. Would Dart be a realistic option?

reddit.com
u/biitsplease — 16 hours ago

I need guidance

Hi, i am someone who knows programming fundamentals and object oriented programming basics from learning the java language. But now i am trying to learn dart and i have been having alot of trouble understanding it's concepts. I started reading the dart tutorial documentation on it's official dart.dev website and i am stuck on this page

https://dart.dev/learn/tutorial/object-oriented

for almost 2 days now i do understand what they are making but i don't not understand how they are doing it even after reading the doc i have no clue what's going on.

I am starting to question myself if i am miss some prerequisites or i do not have the programming skills to understand this yet.

Could anyone tell me if i should just drop the tutorial and learn from other source or what should i do.

Thank you

u/Lucky_Elk_1407 — 1 day ago
▲ 0 r/dartlang+1 crossposts

I built the missing AI SDK for Flutter — one interface for Claude, OpenAI & Gemini (swap providers in a line)

There's a polished SDK for talking to LLMs on the web (the Vercel AI SDK). On the Dart/Flutter side there was nothing equivalent — everyone re-wires the same plumbing (request shaping, SSE streaming, tool-call round-trips, multi-provider) by hand.

So I built llm_sdk: one interface, three brains behind it.

  • 🔁 Multi-provider — Claude, OpenAI, Gemini. Swapping is literally one line.
  • ⌨️ Streaming — streamText gives you a Stream<String>, word by word.
  • 🛠️ Tool calling — declare a Tool, the SDK orchestrates the whole loop.
  • 📋 Structured outputs — generateObject<T> fills a typed Dart object.

The whole design rests on a 2-method provider contract; all the logic (tool loop, streaming, structured outputs) lives once in the client. Adding a provider is pure dialect translation.

Pure Dart package (no Flutter dependency), MIT, fully tested (mocked request/response + SSE).

pub.dev: https://pub.dev/packages/llm_sdk GitHub: https://github.com/Geekles007/llm_sdk

Feedback very welcome — especially on the API ergonomics and which provider you'd want next (Mistral? Ollama? local?).

u/ProfessionalPage7174 — 4 days ago
▲ 3 r/dartlang+1 crossposts

dart_agent_core now supports full lifecycle hooks for building AI agent loops in Flutter

I’ve been working on dart_agent_core, a Dart package for running AI agents directly inside Flutter apps, without needing a Python or Node backend for the agent loop. The latest update adds a unified AgentHook pipeline plus observation-only AgentController events. This is useful if you are building agent loops or runtime/eval harnesses. Instead of only sending a prompt and waiting for a final answer, you can now intercept the loop as it runs:

  • Use beforeModelCall to inject temporary context, change tools, adjust model config, or return a synthetic model response.
  • Use afterModelCall to validate a response, retry, or replace the final model message.
  • Use beforeToolCall to approve, deny, defer, or rewrite tool calls.
  • Use afterToolCall to normalize tool results, inject follow-up context, or stop the loop.
  • Use onTurnCompletion to continue the loop when the model stops too early.
  • Use persistence hooks to decide when state should be saved.
  • Use AgentController events for tracing, debugging, evals, and Flutter UI updates.

Pub.dev Github

u/SparkleMing — 4 days ago

Ribs 1.0 - Functional Programming Toolkit for Dart

I've finally pulled the trigger on a 1.0 release for my suite of functional programming (FP) packages Ribs. I've spent a lot of time putting these together, taking inspiration from many other libraries and trying to make a pure FP toolkit for the Dart community. If you've ever used cats, cats-effect, fs2, scalacheck, etc. from the Scala ecosystem, these libraries should look very familiar.

While ribs does provide the standard Option, Either, Validated, etc. FP types you find in many other packages, the real interesting parts come from the more advanced features:

  • Collections framework: Rich immutable and mutable collection hierarchy, interoperable with Darts native collections.
  • Effect system: Pure, cancelable, resource-safe, fiber based concurrency with IO, Resource, Ref, Deferred, etc.
  • Pure Streaming with Rill: Pure, pull-based, chunked streams with resource safety baked in, back-pressured channels, and signalling (FS2-style) with file and network I/O support.
  • JSON & binary codecs: Fully typed codecs, with streaming support.
  • Much more to explore: property-based testing, pure SQLite/Postgres transactors, optics, compile-time dimensional analysis (units), typed network addressing.

Ribs is split into 15 focused packages, so you can pull in only what you want to use.

I use these packages extensively for work and I'm hoping they're helpful to the community and would love to see what people build with it.

Documentation

GitHub

reddit.com
u/cranst0n — 6 days ago
▲ 6 r/dartlang+1 crossposts

🚀 ApolloVM 0.1.28 Released

This is one of the biggest ApolloVM releases so far, bringing two new languages, major WebAssembly advancements, and substantial runtime improvements.

https://pub.dev/packages/apollovm

🆕 Kotlin Support

ApolloVM now supports Kotlin parsing, execution, and translation, reaching feature parity with Java support.

  • ✅ Parse Kotlin source
  • ✅ Execute Kotlin code inside ApolloVM
  • ✅ Translate Kotlin ↔ Dart ↔ Java
  • ✅ Shared AST architecture with no AST changes required

Supported features include functions, classes, type inference, collections, control flow, and string templates.

🆕 Modern JavaScript Support

JavaScript is now a first-class ApolloVM language.

  • ✅ Parse, execute, and translate JavaScript
  • ✅ Classes, constructors, fields, methods
  • ✅ let / const / var
  • ✅ for, for...of, while
  • ✅ Template literals
  • ✅ Arrow functions
  • ✅ Strict equality (===, !==)

JavaScript can now be translated to Dart and Java, and Dart/Java code can be translated back to JavaScript through the shared AST.

🌐 Massive WebAssembly Progress

Building on the work introduced in 0.1.27, ApolloVM now provides extensive Wasm generation support:

  • ✅ Lists and Maps
  • ✅ String handling and interpolation
  • ✅ Loops and recursion
  • ✅ Function calls
  • ✅ Dynamic memory growth
  • ✅ Map iteration (.keys / .values)
  • ✅ Map parameters and return values
  • ✅ Compound collection assignments (m[k] += 1)
  • ✅ Browser validation on Chrome

The Wasm backend is rapidly moving toward full Dart feature parity.

⚡ Runtime Improvements

• Dynamic arithmetic now works correctly across all supported languages • for-each / for...of loops now operate on any iterable • JavaScript division follows JavaScript semantics (7 / 2 = 3.5) • Improved code generation correctness • Fixed CLI translation output issues

🧪 Quality & Testing

This release adds extensive coverage for Kotlin, JavaScript, WebAssembly, runtime behavior, translation round-trips, and cross-language execution.

ApolloVM now supports:

  • 🔹 Dart
  • 🔹 Java
  • 🔹 Kotlin
  • 🔹 JavaScript
  • 🔹 WebAssembly (compilation/generation)

All powered by a single shared AST and runtime infrastructure.

GitHub: ApolloVM/apollovm_dart

The long-term goal remains unchanged: write once, parse anywhere, execute anywhere, translate anywhere.

#ApolloVM #DartLang #Java #Kotlin #JavaScript #WebAssembly #Wasm #Programming #OpenSource

u/GMP10152015 — 12 days ago
▲ 13 r/dartlang+1 crossposts

Shipped a pure Dart SQL Server driver

Shipped mssql — a pure Dart TDS 7.4 driver for SQL Server. No FFI, no native extensions, just Dart and TCP.

Features: named params, connection pool, TLS, Azure AD auth, multiple result sets, streaming, transactions. 366 tests including concurrent pool stress tests and adversarial comparison against go-mssqldb and node-mssql.

dart pub add mssql

It works as a standalone driver today. The next step is switching knex_dart_mssql to use it as the underlying transport — which drops the C FFI dependency and makes the knex_dart MSSQL driver work on web.

github.com/kartikey321/mssql-dart | pub.dev/packages/mssql

u/Only-Ad1737 — 11 days ago

Mi primer código

Hola a todos. Os quería enseñar mi código y saber qué os parece. Llevo 3 días, es básicamente una calculadora de edad

  void main() {
int anoDeNacimiento = 2011;
  int anoActual = 2026;

  int edad = anoActual - anoDeNacimiento;

  print('Tu edad es de $edad');
}
Está bien o mal?

reddit.com
u/Square_Document8746 — 13 days ago