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

Repository files navigation

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.

Ivy.mp4

Features

  • 🛠️ CLI: Init new projects, add data providers, generate apps using AI and deployments.
  • 💡 Authentication: Integrations with Supabase, Microsoft Entra, and more.
  • 🗄️ Databases: Easy integration with SqlServer, Postgres, Supabase, MariaDB, Mysql, Airtable, Oracle, Google Spanner, Clickhouse, Snowflake and Big Query.
  • 🤖 LLM Code Agent: Generate entire backoffice based on your database schema.
  • 🕵️ Secrets Management
  • 🚀 Container Deployment: Easily deploy to Azure, AWS, or Google Cloud.
  • 🔥 Hot Reload: With maintained state!
  • 🧩 Dependency Injection
  • 📍 State Management
  • 🧭 Routing
  • 🧱 External Widget Framework: Integrate any React, Angular, or Vue component (comming soon)
  • 🔢 Data Tables: Sort, filter, and paginate data. (comming soon)

Current State

Ivy is still early in development and we are working on more robust documentation. We release new versions almost daily.

Inspirations

  • React
  • FuncUI
  • Streamlit
  • LINQPad ("Dump" method)

Usage

Quick Start

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
    
  3. Add a data provider:
    ivy connect db
    
  4. Run:
    dotnet watch
    
  5. Open http://localhost:5000 in your browser.

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

Developer Build

  1. Install dependencies:
  2. Fork and clone this repository.
  3. Build the frontend:
    cd ../frontend
    npm install
    npm run build
    npm run dev
  4. Run Ivy.Samples backend:
    cd Ivy.Samples
    dotnet watch
  5. Open http://localhost:5137 in your browser.

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

Contributing

  1. Fork the repository.
  2. Create a new feature branch.
  3. Submit a pull request.

Feel free to file issues and feature requests.

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

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 5

Languages