The SharpRune app

A C# workspace.
That travels with you.

Read a lesson, change the sample and follow an idea into a project of your own. SharpRune brings a native editor, a learning library and a real C# compiler to iPhone and iPad.

Invitation-only TestFlight preview

For iPhone and iPad running iOS 18 or later. The compiler and bundled curriculum live on the device. Keep local projects and export the work you want to take elsewhere.

Planned public app launch: US$9.99 one-time. Current TestFlight preview: free by invitation.

C#
LINQ practiceA local SharpRune project
On device
PROJECT FILES↳ Program.csRead · change · run
Program.cs
var prices = new[] { 12m, 8m, 25m };

var total = prices
    .Where(price => price >= 10m)
    .Sum();

Console.WriteLine(total);
OUTPUT37Compiled with Roslyn
Illustrative workspace · the sample is available in the playground.
A short loop, a lasting understanding

Read it. Change it.
Make sense of it.

Learning and making belong close together. Each part helps you take a concrete next step.

01 / FOLLOW AN IDEA

Learn with working examples

Browse 20 courses and 519 lessons. Read the explanation, predict the output and open a copy in Code. Your own project stays separate from the original lesson.

02 / GIVE IT A SHAPE

Build a local project

Keep related C# files together, organize them into folders and search your source. Reference examples give you complete small projects to understand and adapt.

03 / CHECK YOUR THINKING

Run on the device

Roslyn compiles your source and .NET 9 WebAssembly executes it locally. Read compiler diagnostics, supply prepared input and compare the actual result with your prediction.

Native TestFlight preview · C# console source

Follow the program.
One statement at a time.

Pause before a statement runs. See the values it will use, follow a call and connect each change to the line that caused it.

01 / CHOOSE WHERE TO LOOK

Start at the beginning.
Stop where it matters.

Start debugging pauses before the first executable statement. Tap a line number to set a breakpoint; a blank or comment line binds to the next executable line in that file when one is available.

Continue runs until the next breakpoint or completion. Pause requests a stop at the next instrumented statement. Stop ends the debug session.

02 / FOLLOW THE CALL

Step in, over or out.

Step Into follows a call into your project's C# source. Step Over executes the current statement without entering its calls. Step Out resumes until control returns to the caller.

Choose a call-stack frame to see its available locals and navigate to that frame's source. The live execution location remains highlighted while you inspect.

03 / READ THE ACTUAL STATE

See what has changed.

Inspect assigned locals and parameters, class instance fields through this, and expandable field and array values. The inspector reads fields without evaluating user property getters or custom ToString methods.

Values describe the paused program. Keep following the statements to see how a value changes; arbitrary watch-expression evaluation is not part of this preview.

Learn the debugger controls ↗
SharpRune iPhone debugger paused before Program.cs line 3, with a breakpoint, total equal to 4 and amount equal to 2.
Internal preview, live on-device stepping. Paused before Program.cs:3 with total = 4 and amount = 2. Select the image to view it at full size.
A focused source debugger

For native C# console projects. Framework and package internals, expression lambdas and iterator bodies run as opaque calls. Ref-like values are omitted from the inspector. Stop debugging before editing; this preview has no hot reload. The browser playground keeps Run and compiler diagnostics; it does not have stepping controls. Server and JavaScript debugging are outside this feature.

Two ways in

A pocket workspace.
An open browser.

The app and website share the learning material. Their project storage and progress remain independent.

Choose the workspace that fits the moment.
CapabilityiPhone & iPad appWebsite & playground
AppearanceLight, Dark or Auto in Settings → AppearanceLight, Dark or Auto from the page header; saved in this browser
The .NET journalEight complete articles and illustrations bundled for offline readingEight free articles, with three downloadable .NET 10 experiments
Where you use itNative app on iPhone and iPad, iOS 18 or laterA recent desktop or mobile browser with WebAssembly
Lessons and referencesBundled learning material works offlinePublic reading pages; internet access is needed to load them
Running C#Roslyn and .NET 9 WebAssembly run on the deviceRoslyn and .NET 9 WebAssembly run in a browser worker
Source debuggingNative TestFlight preview: breakpoints, stepping, locals and call stackRun and compiler diagnostics; no source stepping
Project storageLocal projects, folders and multiple source filesTemporary editor session; download all source as a ZIP
Learning progressSaved in the app on this deviceSaved in this browser; it does not sync with the app
Prepared inputSupply Console.ReadLine() values before a runSupply Console.ReadLine() values before a run
SharingOptional temporary encrypted rooms and project exportOpen a shared-room snapshot or download a local project
AccessFree TestFlight preview by invitation; planned public launch US$9.99 one-timeFree to use without an account
A useful, focused environment

Know what
you can build.

Explore language features, collections, algorithms, async workflows and managed data processing. Multi-file examples show how small programs can grow into understandable projects.

The runtime profile matters

The app uses a .NET 9 WebAssembly runtime with bundled references. Operating-system processes, arbitrary native libraries and production ASP.NET server deployment require a separate environment.

A run has a 120-second limit. Prepare input before running; the input panel is not an interactive terminal. Keep an exported copy of important work.

Read the field guide ↗
Before you begin

A few practical
questions.

All questions & answers ↗
Is there a subscription or a purchase to make today?

The planned public App Store launch price is US$9.99 as a one-time app purchase. The public website and current invitation-only TestFlight preview are free. No purchase, subscription or pre-order is available on this website. Regional App Store pricing will be shown before a future purchase; beta access does not grant a future paid-app entitlement.

Does code run on a server?

An ordinary Run compiles and executes the code locally: on the device in the native app, or in a WebAssembly worker in the browser playground. Optional room sharing and network calls written into your own code are separate network activity.

Where can I report an issue or request access?

Email support@sharprune.com. Native preview users can also choose Send Beta Feedback in TestFlight. Include your app build or page URL, device, steps and expected behavior, and remove credentials and private source.

Can I step through C# in the browser playground?

Source stepping is a native C# console debugger feature. It pauses at entry, supports source breakpoints and provides Continue, Pause, Stop, Step Into, Step Over and Step Out. The browser playground provides local Run and compiler diagnostics, without stepping controls.

Your next idea
starts with a line of code.

No setup. No account. Just a little curiosity.

Write your first line