• Stars
    star
    222
  • Rank 179,123 (Top 4 %)
  • Language
    C#
  • License
    MIT License
  • Created over 13 years ago
  • Updated 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Open Source framework for writing data-centric applications using the latest versions of .Net Core, C# (not-nullable), ASP.NET Web API, Typescript (strict), React, D3 and Sql Server or PostgreeSQL

Signum Framework

Join the chat at https://gitter.im/signumsoftware/framework

Signum Framework is an Open Source framework from Signum Software for writing data-centric applications over the latest technologies from Microsoft (.Net Core, C#, ASP.Net Web.API and Typescript in their latest versions) and web standard libraries (React, Bootstrap and D3). It uses either Microsoft SQL Server or PostgreSQL to store data.

The main focus of the framework is being able to write vertical modules (database tables, entities, logic and React UI components) that can be shared between projects.

It provides a consistent model for N-layer architectures by moving the entities to the very center of your solution using Signum.Entities.

Our cutting-edge ORM, Signum.Engine, has a full LINQ Providers that avoids N + 1 problem and lets you UPDATE / DELETE / INSERT entities without having to retrieve them first.

Signum.React let you write a Single Page Application using React, Bootstrap and TypeScript.

Demo Application

Check some of the features of Signum Framework in Southwind, a Northwind port running in Azure.

Signum Extensions

Set of modules that complements Signum Framework like Authorization, Charting, Dashboards, Mailing, Processes, Scheduled Tasks, Disconnected, User Queries...

Check the different modules in https://www.signumsoftware.com/es/Extensions

Main Features

  • Designed for vertical modules (aka: Bounded Context)
  • Entities-first approach
  • ORM with a full LINQ Provider
  • Unified validation
  • Schema generation and synchronization
  • WPF smart-client interface
  • React/Typescript SPA

Principles

  • Promote simple and clean code, avoiding astronautical architectures.
  • Favor compile-time checked code over dynamic code.
  • Create a solid foundation for the integration of application modules (on schema, BL and UI code).
  • Encourage a more functional way of programming.
  • Avoid code duplication.
  • Be a good citizen wherever we are (.Net, LINQ, React) following common practices and conventions.

Getting Started

  • Signum Framework: Know what makes Signum Framework suited for building complex business applications.
  • Signum Extensions: A set of ready-to-use modules that work with any Signum Framework application.
  • Documentation: Documentation (from Markdown files in GitHub)
  • Tutorials: Tutorials (in docx and pptx)
  • Create Application: The simplest way to get started. Create a new project by renaming and customizing Southwind example application.

ChangeLog

Signum Framework doesn't use any numeric versioning, since is distributed as source code we just use Git commit hashes.

Whenever there are big changes worth to mention, we typicaly write it in the related commit. Here is the list of the relevant changes: