TKCode.Arc.Core
0.1.0-preview.1
See the version list below for details.
dotnet add package TKCode.Arc.Core --version 0.1.0-preview.1
NuGet\Install-Package TKCode.Arc.Core -Version 0.1.0-preview.1
<PackageReference Include="TKCode.Arc.Core" Version="0.1.0-preview.1" />
<PackageVersion Include="TKCode.Arc.Core" Version="0.1.0-preview.1" />
<PackageReference Include="TKCode.Arc.Core" />
paket add TKCode.Arc.Core --version 0.1.0-preview.1
#r "nuget: TKCode.Arc.Core, 0.1.0-preview.1"
#:package TKCode.Arc.Core@0.1.0-preview.1
#addin nuget:?package=TKCode.Arc.Core&version=0.1.0-preview.1&prerelease
#tool nuget:?package=TKCode.Arc.Core&version=0.1.0-preview.1&prerelease
TKCode.Arc
Arc-style components for Avalonia, built on AtomUI. TKCode.Arc ports the free components of Arc — 110 components in 22 groups — with Arc's visual language and spring motion.
- Targets
net10.0andnet11.0; desktop (Windows, macOS, Linux). - Depends on AtomUI 6.2.6 and Avalonia 12.1.4 (exact versions).
- Design documents: design/overview.md.
Packages
| Package | Contents |
|---|---|
TKCode.Arc |
The components (UseArc()), organized like Arc's sidebar. |
TKCode.Arc.Core |
ArcDesign tokens and palette, the spring motion engine, shared primitives, 187 built-in Lucide glyphs. |
TKCode.Arc.Icons.Lucide |
The full Lucide set (2155 icons): LucideIcon control and LucideGeometry markup extension. |
TKCode.Arc.Fonts |
Geist and Geist Mono (WithArcFonts()); body text uses Inter from Avalonia.Fonts.Inter. |
Getting started
AppBuilder.Configure<App>()
.UsePlatformDetect()
.WithInterFont()
.WithArcFonts() // optional: Geist display type and Geist Mono code type
.UseAtomUI(builder =>
{
builder.UseDesktopControls();
builder.UseArc();
});
public partial class App : Application { }
<Window xmlns:arc="https://github.com/AtomUICommunity/TKCode.Arc">
<StackPanel Spacing="12">
<arc:Button Content="Save changes" />
<arc:Button Content="Cancel" Variant="Secondary" />
<arc:Switch Content="Email notifications" IsChecked="True" />
<arc:CopyButton Value="npx arc add copy-button" />
<arc:Button Content="Share" arc:Tooltip.Tip="Copy link" />
<arc:Calendar ShowToday="True" />
</StackPanel>
</Window>
Icons: Arc's built-in glyphs ({x:Static arc:ArcIcons.Check}) cover every icon the components use; any other Lucide icon
comes from the icons package:
<Window xmlns:lucide="https://github.com/AtomUICommunity/TKCode.Arc/lucide">
<lucide:LucideIcon Kind="Sparkles" Size="20" />
</Window>
Accent, appearance and motion level:
var config = new ThemeConfigBuilder()
.WithAlgorithms(ThemeAlgorithm.Default, ThemeAlgorithm.Dark)
.WithArc(arc => arc.Accent(ArcAccentPreset.Violet))
.Build();
await Application.Current!.GetThemeManager()!.ApplyThemeAsync(
new ThemeRequest(IThemeManager.DEFAULT_THEME_ID, config, ThemeTransitionReason.UserRequest));
ArcMotion.SetLevel(window, ArcMotionLevel.Reduced); // Full, Reduced or Off
Applications must not enable InvariantGlobalization (number and date formatting needs culture data).
Building
Requires the .NET 11 SDK (see global.json) and the .NET 10 runtime (AtomUI build tasks run on it).
dotnet build TKCode.Arc.slnx
dotnet test tests/TKCode.Arc.Core.Tests
dotnet test tests/TKCode.Arc.Tests
dotnet run --project gallery/TKCode.Arc.Gallery.Desktop -f net10.0
License
MIT. See THIRD-PARTY-NOTICES.md for Arc (MIT), Lucide (ISC), fonts (OFL) and the AtomUI (LGPL-3.0) dependency.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. net11.0 is compatible. |
-
net10.0
- AtomUI.Controls (= 6.2.6)
- AtomUI.Core (= 6.2.6)
- AtomUI.Desktop.Controls (= 6.2.6)
- Avalonia (= 12.1.4)
- Avalonia.Desktop (= 12.1.4)
-
net11.0
- AtomUI.Controls (= 6.2.6)
- AtomUI.Core (= 6.2.6)
- AtomUI.Desktop.Controls (= 6.2.6)
- Avalonia (= 12.1.4)
- Avalonia.Desktop (= 12.1.4)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on TKCode.Arc.Core:
| Package | Downloads |
|---|---|
|
TKCode.Arc
Arc-style component library for Avalonia, built on AtomUI. Ports the free components of Arc (uiarc.dev) with their visual language and spring motion. |
|
|
TKCode.Arc.Icons.Lucide
The complete Lucide icon set (ISC) for TKCode.Arc: LucideIcon control and LucideGeometry markup extension. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.3.0-preview.3 | 0 | 10/23/2026 |
| 0.3.0-preview.2 | 0 | 10/23/2026 |
| 0.3.0-preview.1 | 41 | 10/21/2026 |
| 0.2.0-preview.1 | 43 | 10/21/2026 |
| 0.1.1-preview.1 | 46 | 10/21/2026 |
| 0.1.0-preview.1 | 45 | 10/20/2026 |