BindKraft комбинира клиентски и сървърен фреймуърк, за да предостави най-голяма гъвкавост.
Клиентската страна е JavaScript фреймуърк, който предлага начини за създаване, подреждане и контролиране на контейнери за изгледи и контролни елементи. Тя предлага полу-пасивно свързване на данните с изгледа, което е кодирано в маркъпа. Тоест тя е безкрайно гъвкава и може да бъде използвана по много различни начини.
Възможността за повторна употреба, разширяемост и устойчивост са основни цели, които винаги се взимат под внимание по време на процеса на разработка. Написана е изцяло на ООП JavaScript и има обичайното класово наследяване и интерфейси, но добавя и интерфейсни изпълнители и помощници, за да образува нещо, което наричаме хибридно наследяване, което дава на разработчика най-много от добрите страни на множественото наследяване, но запазва основната логическа структура на единичното наследяване.
Сървърната страна предоставя разширяем back-end, който може да бъде вързан към почти всички модерни източници на данни. Направен е на .NET Core, така че може да се използва на различни операционни системи.
Целта на фреймъурка е да предложи основен комплект от функции, които се изпълняват бързо и надеждно и да даде възможността за разрастване под формата на персонализирани плъгини, които могат да се вържат с pipeline-а, който сме дефинирали. Може да бъде използван с всички популярни технологии за бази данни, чрез използването на дефинирани от потребителя TreeNodes (node структура в JSON) и дори има възможност да чете и пише от и към файлове. Обработва всички заявки идващи от клиентаасинхронно и предлага обработване на заявки на партиди. Резултатът за всяка партида се пази на сървъра докато не се завърши обработката за цялата партида, след което отговорът се праща на клиента.
Ако има технология, която не поддържаме предлагаме разрастване под формата на персонализирани плъгини. Можете да добавите поддръжка за Вашата технология за Back-end и лесно да я добавите към нашия pipeline. Можете да дефинирате какъв data loader искате в TreeNode-a, да напишете персонализирания си плъгин и да го референцирате в TreeNode-a.