AuroCI 1.4.0
dotnet tool install --global AuroCI --version 1.4.0
dotnet new tool-manifest
dotnet tool install --local AuroCI --version 1.4.0
#tool dotnet:?package=AuroCI&version=1.4.0
nuke :add-package AuroCI --version 1.4.0
<p align="center"> <img src=".github/assets/header.svg" alt="AuroCI Logo"> </p>
A smart, interactive CLI tool for automated CI/CD pipeline generation β because writing YAML by hand is so 2020.
π About
AuroCI is a modern CLI tool that eliminates the boilerplate of setting up GitHub Actions. It automatically scans your project directory, detects the .NET project type, and generates a fully configured multi-platform CI/CD workflow in seconds.
No config files. No YAML knowledge required. Just run aci and you're done.
π Features
- π Smart Auto-Detection β parses
.csprojfiles to identify your framework automatically. - π Zero Configuration β generates complete
.github/workflows/YAML files instantly. - π Broad Framework Support β covers 90%+ of the .NET ecosystem out of the box.
- π Cross-Platform CI/CD β automatically configures multi-OS matrix builds (Ubuntu, macOS, Windows).
- π¨ Beautiful Terminal UI β interactive experience powered by Spectre.Console.
- π‘οΈ Defensive Design β safe file operations, interactive confirmations, and robust error handling.
- π§ Manual Fallback β unknown project type? Choose a template manually from an interactive menu.
π Quick Start
AuroCI is available as a .NET Global Tool on NuGet. Install it globally with a single command:
dotnet tool install -g AuroCI
Then run it from any .NET project directory:
aci
That's it. AuroCI will detect your project type and generate the CI/CD pipeline automatically.
π¦ Supported Project Types
| Project Type | Detected By | CI Runners |
|---|---|---|
| ASP.NET Core Web | Microsoft.NET.Sdk.Web |
Ubuntu, macOS, Windows |
| .NET Console App | <OutputType>Exe</OutputType> |
Ubuntu, macOS, Windows |
| .NET MAUI | <UseMaui>true</UseMaui> |
macOS (iOS), Windows (Android) |
| Avalonia UI | Avalonia reference |
Ubuntu, macOS, Windows |
| WPF | <UseWPF>true</UseWPF> |
Windows only |
| WinForms | <UseWindowsForms>true</UseWindowsForms> |
Windows only |
| Blazor WASM | WebAssembly reference |
Ubuntu, macOS, Windows |
| Class Library | SDK-style, no OutputType |
Ubuntu, macOS, Windows |
| Worker Service | Microsoft.NET.Sdk.Worker |
Ubuntu |
| Flask Web App | flask in requirements.txt |
Ubuntu only |
| Django Web App | django in requirements.txt |
Ubuntu only |
| FastAPI | fastapi in requirements.txt |
Ubuntu only |
| Python Script/Library | requirements.txt or pyproject.toml |
Ubuntu, macOS, Windows |
| Python Data Science | pandas/numpy/jupyter |
Ubuntu only |
ποΈ Project Structure
AuroCI.sln
βββ AuroCI.Core/ # Pure C# logic β detectors, models, generators
β βββ Detector/
β β βββ ProjectDetector.cs
β βββ Interfaces/
β β βββ ITemplateGenerator.cs
β βββ Models/
β β βββ ProjectConfig.cs
β βββ Templates/
β βββDotNet/
| | βββ AvaloniaTemplate.cs
β | βββ BlazorTemplate.cs
β | βββ ClassLibraryTemplate.cs
β | βββ ConsoleTemplate.cs
β | βββ MauiTemplate.cs
β | βββ WebTemplate.cs
β | βββ WinFormsTemplate.cs
β | βββ WorkerTemplate.cs
β | βββ WpfTemplate.cs
| βββ Python/
| | βββ DjangoTemplate.cs
| | βββ FastApiTemplate.cs
| | βββ FlaskTemplate.cs
| | βββ PythonScriptTemplate.cs
β βββDockerTemplate.cs
β
βββ AuroCI.CLI/ # UI layer β terminal interface
β βββ Program.cs
β βββHelpers/
β βββ DirectoryNavigator.cs
β βββ DockerHelpers.cs
β
βββ AuroCI.Tests/ # Unit tests for core logic
βββ DtectorTests/
π οΈ Tech Stack
| Layer | Technology |
|---|---|
| Language | C# / .NET 10 |
| Terminal UI | Spectre.Console |
| Architecture | Interface-driven |
| File Parsing | System.IO |
| IDE | JetBrains Rider |
π₯οΈ Screenshots
Main screen:
<img width="544" height="448" alt="Main screen" src="https://github.com/user-attachments/assets/c529440b-99f8-4a2f-9714-ffcc00ded8aa" />
Project browser:
<img width="556" height="426" alt="Project browser" src="https://github.com/user-attachments/assets/f8d2bded-442b-4705-afae-fd4579063724" />
Confirmation prompt:
<img width="546" height="424" alt="Confirmation" src="https://github.com/user-attachments/assets/08ff2a41-a373-440c-8a32-e09e8f8242dd" />
πΊοΈ Roadmap
- Smart project detection engine
- Interactive CLI UI with Spectre.Console
- ASP.NET Core Web template
- .NET Console App template
- .NET MAUI template (iOS/macOS & Android/Windows)
- Avalonia UI template
- WPF template
- WinForms template
- Blazor WASM template
- Class Library template
- Worker Service template
- Global .NET Tool on NuGet (
dotnet tool install -g AuroCI) - Manual template fallback for undetected projects
- Dockerfile generation with .dockerignore support
- Python support (Flask, Django, FastAPI, Data Science, Script)
- Support for other languages (Node.js, Go)
- Custom template configuration via
auroci.json
π¨ Build from Source
git clone https://github.com/d4nilx/AuroCI.git
cd AuroCI
dotnet run --project AuroCI.CLI
π License
Distributed under the MIT License. See LICENSE for more information.
| 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. |
This package has no dependencies.