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
- 🛠️ 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)
Ivy is still early in development and we are working on more robust documentation. We release new versions almost daily.
- React
- FuncUI
- Streamlit
- LINQPad ("Dump" method)
Make sure you have the .Net 9 SDK installed.
- Install Ivy CLI:
dotnet tool install -g Ivy.Console
- Create a new project:
ivy init
- Add a data provider:
ivy connect db
- Run:
dotnet watch
- 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.
- Install dependencies:
- Fork and clone this repository.
- Build the frontend:
cd ../frontend npm install npm run build npm run dev
- Run Ivy.Samples backend:
cd Ivy.Samples dotnet watch
- 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.
- Fork the repository.
- Create a new feature branch.
- Submit a pull request.
Feel free to file issues and feature requests.