Skip to content

The ultimate framework for building internal tools with LLM code generation by unifying front-end and back-end into a single C# codebase.

License

Notifications You must be signed in to change notification settings

Ivy-Interactive/Ivy-Framework

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

logo

Build Internal Applications with AI and Pure C#

Ivy - The ultimate framework for building internal tools with LLM code generation by unifying front-end and back-end into a single C# codebase. With Ivy, you can build robust internal tools and dashboards using C# and AI assistance based on your existing database.

Sign up for our waitlist to be among the first to get access.

Documentation | Samples | Current Sprint | Roadmap | Examples

Open in GitHub Codespaces

Ivy.mp4

The code should be familiar to React developers. Views → Components, Build → Render, Widgets → Element.

3g829iF9gmsQUX

Features

  • 🛠️ CLI: Init new projects, add data providers, generate apps using AI, and manage deployments.
  • 💡 Authentication: Integrations with Supabase, Auth0, Clerk, Microsoft Entra (more is coming)
  • 🗄️ Databases: Easy integration with SQL Server, Postgres, Supabase, MariaDB, MySQL, Airtable, Oracle, Google Spanner, Clickhouse, Snowflake, and BigQuery.
  • 🤖 LLM Code Agent: Generate an entire back office application based on your database schema.
  • 🕵️ Secrets Management
  • 🚀 Container Deployment: Easily deploy to Azure, AWS, or Google Cloud or Sliplane.
  • 🔥 Full support for Hot-Reloading with maintained state as much as possible (suck on that Blazor).
  • 🧩 Dependency Injection
  • 📍 State Management: State is managed on the server, making this very secure.
  • 🧱 Building Blocks: Extensive set of widgets to build any app. An external widget framework is coming soon, where you can integrate any React, Angular, or Vue component.
  • 🧱 External Widget Framework:
  • 🔢 Data Tables: Sort, filter, and paginate data. (coming soon)

We optimise for the 3 X:s - UX (love your end users), DX (let Ivy love you) - LX (minimise LLMs mistakes)

Ivy maintains state on the server and sends updates over WebSocket. The frontend consists of a pre-built React-based rendering engine. With Ivy, you never need to touch any HTML, CSS, or JavaScript. Only if you want to add you’re own widgets.

The whole framework is built around strict enterprise security constraints. As the state is fully maintained on the BE, we can minimise the risk of secrets leakage. This is a major problem with prototype tools like Lovable/vo/Bolt. All authentication integrations are handcrafted and audited.

Usage

Quick Start

⚠️ Note: Ivy.Console is still in beta, and the agentic features require an account. Sign up for our waitlist to be among the first to get access.

Make sure you have the .Net 9 SDK installed.

  1. Install Ivy CLI:

    dotnet tool install -g Ivy.Console
  2. Create a new project:

     ivy init --hello
  3. Run:

    dotnet watch
  4. Open http://localhost:5010 in your browser.

You can also run ivy samples to see all the components that Ivy offers and ivy docs for documentation.

Framework Developer Instructions

If you want to work on the framework itself, you need to set up the following:

  1. Install dependencies:

  2. Fork and clone this repository.

  3. Pre-generate documentation files (first time only):

    Windows (PowerShell):

    cd Ivy.Docs.Shared
    .\Regenerate.ps1

    Mac/Linux (Bash):

    cd Ivy.Docs.Shared
    sh ./Regenerate.sh
  4. Build the frontend:

    cd frontend
    npm install
    npm run build
    npm run dev
  5. Run the backend (choose one):

    For Ivy.Samples (testing components):

    cd Ivy.Samples
    dotnet watch

    For Ivy.Docs (documentation):

    cd Ivy.Docs
    dotnet watch
  6. Open http://localhost:5173/ in your browser.

Changes in /frontend will be hot-reloaded by Vite and changes in /Ivy.Samples will be hot-reloaded by Ivy.

For detailed contribution guidelines, see CONTRIBUTING.md.

About

The ultimate framework for building internal tools with LLM code generation by unifying front-end and back-end into a single C# codebase.

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 18