shesha-io / shesha-framework

An open-source Low-Code development framework for .NET developers. Create .NET based business applications with 80% less code.
https://shesha.io
Apache License 2.0
285 stars 45 forks source link
abp abp-framework app-factory business-solutions crud-application csharp enterprise-software low-code-framework nextjs open-source react workflow-automation

Shesha Logo

What is Shesha?

Shesha is an open-source Low-Code development framework specifically for .NET developers. You can build anything from simple CRUD apps, admin panels to complex business applications super quickly.

Shesha builds on top of other excellent frameworks and libraries (most notably ASP.NET Core, Abp.io, React, NextJs), layers on Low-Code capabilities (think drag & drop form builder and app themer), and incorporates standard admin functionality (e.g. User and security management) to drastically reduce the time and effort required to build applications.

In fact, in our experience, you will likely need >80% less code for most typical business applications.

👾 Embark on an adventure and explore the boundless possibilities of Shesha at our tutorial site! It's not just a playground; it's a vibrant universe where you can interact with the framework and witness its magic unfold.

More info from the Shesha website.

Features

Shesha comes with a range of features that massively reduce the effort required to create business applications:

Get StartedYouTubeDemo Site


Build Apps in 4 Steps

1. Implement your Domain

Shesha takes a Domain-driven approach to application development, the starting point is therefore to implement your domain. This is done by implementing Entity classes as you would do for any business application. You can extend standard entities that come as part of the base Shesha model (e.g. Person, Organisation, Site, etc...) or by creating your own.

Create your domain

2. Expose your APIs

All it takes to expose your domain and data through dynamically generated CRUD APIs is the checking of a box and specifying the authorization rules.

You will immediately get full CRUD support as well as GraphQL endpoints for flexible and efficient data retrieval.

Expose your APIs

Where the dynamically generated APIs are insufficient, you still have the full power of Visual Studio and ASP.NET Core to create custom APIs the way you are used to.

3. Configure your UI

Once you have exposed your domain and APIs, you can build your UI through our drag-and-drop form builder. There are over 40 different components including tables, lists, forms, sub-forms, modals, and many more allowing you to build sophisticated and scalable enterprise applications without a line of front-end code.

Expose your APIs

Where the configuration-only approach is too limiting, you can add Javascript snippets to implement more advanced behavior or build custom components or entire pages using React.

4. Deploy your app

Simply deploy your application as you would any other ASP.NET Core website with Sql Server. Deploy on your favorite cloud or on-premise.

Getting Started

The easiest way to get started is by downloading a starter template and by following our tutorial videos that will take you through the full process of building your first Shesha application.

Support and Community

Issues are inevitable. When you have one, our entire team and our active developer community are around to help.

💬 Talk to us on Discord
📄 Find a solution in our Documentation
⚠️ Open an issue right here on GitHub
💡 Use our learning resources: Videos
👾 Play around with live configurations on our tutorial site

How to Contribute

We ❤️ our contributors. We're committed to fostering an open, welcoming, and safe environment in the community.

📕 We expect everyone participating in the community to abide by our Code of Conduct. Please read and follow it.
🤝 If you'd like to contribute, start by reading our Contribution Guide.
👾 Explore some good first issues.

Let's build great software together!

License

Shesha is available under the Apache License 2.0. Use it wisely!