Skip to content

Latest commit

 

History

2,639 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 


..NET 8 TS TS NuGet Discord

JJMasterData is an open-source .NET library to help you create dynamic CRUDs quickly from data dictionaries (database metadata), along with other boilerplate-intensive things like exporting and importing data.

The repository also ships JJMasterData.CommandLine, a dotnet tool that exposes the jjmasterdata command for import, export, diff, and interactive workflows.

Useful Links

What is a Data Dictionary?

Learn more in this blog article about the concept on which JJMasterData works.

Features

  • Components generated at runtime 🔥
  • Data exportation & importation ↔️
  • Database script generation ✍️
  • Plugins support by interfaces 🪄
  • Multiple forms using relationships⛓️

Getting Started

Setup-JJMasterData.mp4
  1. Create an ASP.NET Core project (it can be Blazor, MVC, Razor Pages, whetever you like...)
  2. Install JJMasterData.Web
dotnet add package JJMasterData.Web
  1. Configure your IConfiguration source with a connection string at JJMasterData:ConnectionString
{
  "JJMasterData": {
    "DataDictionaryTableName": "MasterData",
    "ConnectionString": "Server=localhost;Database=JJMasterData;Integrated Security=True;Trust Server Certificate=true",
    "ReadProcedurePattern": "{tablename}Get",
    "WriteProcedurePattern": "{tablename}Set"
  }
}
  1. At Program.cs add the following lines:
using JJMasterData.Web.Configuration;

var builder = WebApplication.CreateBuilder(args);

builder.Services.AddJJMasterDataWeb();

///...

var app = builder.Build();

///...

//Required middlewares
app.UseStaticFiles();

app.MapDataDictionary();
app.MapMasterData();

await app.UseMasterDataSeedingAsync();

app.Run();
  1. Create a wwwroot folder if your project is empty
  2. Run the project and visit /DataDictionary/Element/Index
image

You can get the appsettings.json schema URL from here

See all steps in documentation.


Building from source 🧰

  1. Install .NET 8

  2. Install NodeJS

  3. Clone this git repository

  4. Open JJMasterData.sln file at your IDE

  5. Set the WebEntryPoint as startup project

  6. Run the project

Special Thanks

Code contributors


Alt

Bugs and feature requests 🐛

Have a bug or a feature request? Please first search for existing and closed issues.
If your problem or idea is not addressed yet, please open a new issue.

About

.NET CRUD generator library with Bootstrap support to create dynamic forms at runtime from a data dictionary.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

210 stars

Watchers

4 watching

Forks

Releases

Used by

Contributors

Languages