QetriX


QetriX

About QetriX

QetriX is a paradigm for creating digital apps with semantic data. Its main focus is on HTML5, which has been popular in both online and offline solutions for the past few years.

The QetriX Framework consists of components: QView, QList and QForm. Each component transform data provided by datastores to a representation defined by converters.

QetriX introduces data particles, whose unique structure allows to store dynamically structured and interlinked semantic data of any kind.

QetriX Family

Framework

Many platforms, single coding style. Quick and easy way how to make apps for various targets, using components, converters and datastores. Scriptable with Que language.

QPDB

Particle database schema for dynamically structured and interlinked semantic data. Also features geographical extension.

Qarate

Social network, where users can rate anything on a scale from 1 (worst) to 5 (best). Uses data from QB.

QB

Database for anything (and maybe one day of everything): people, food, products, places, machines, movies, songs, companies. It allows to view, edit and compare them.

Quid

ERP for companies and individuals. Contains basic Project Management with Time Tracker, CRM, Asset Management, Service Desk, CMDB and more.

Quiky

Quick Wiki - easy to use online and offline wiki with QPDB support. Also works as CMS for websites, blogs and galleries.

Qua

Trip planner, flight log and geo tracker. Works great in connection with Qarate and Quid. Online or offline usage.

Quly

Cross-genre computer game, where you can groom your family of Qules in an open world.

Showcase

Examples

Page in Java

public class PageInJava extends QModule
{
	public String main()
	{
		var view = new QView("form");
		view.heading("Page in Java");
		view.add("This is a HTML page in Java.");
		return view.convert("page");
	}
}

Table in PHP

class TableInPHP extends QModule
{
	public function table()
	{
		$tbl = new QList("table");
		$tbl->heading("Table in PHP");
		$tbl->add($this->ds()->getTableData());
		$tbl->addCol("id", "ID");
		$tbl->addCol("name", "Name");
		return $tbl->convert("table");
	}
}

Form in C#

public class FormInCS : QModule
{
	public String form()
	{
		var frm = new QForm("form");
		frm.heading("Form in C#");
		frm.add(new QFormControl(QFormControlType.email, "email", "E-mail", "", 10));
		frm.add((new QFormControl(QFormControlType.button)).action("formSubmit"));
		return frm.convert();
	}
}

Navigation in Python

class NavInPython(QModule):
	def nav()
		nav = QList("nav");
		nav.add({"text":"First", "action":"first.html"});
		nav.add({"text":"Second", "action":"second.html"});
		nav.add({"text":"third", "action":"third.html"});
		nav.actionBase(self.page().pathBase());
		nav.value(self.page().path());
		return nav.convert();

DataStore method in Ruby

class RubyOracleDS < DataStore
	def self.getTableData()
		return self.get("SELECT a, b, c FROM ".self.prefix()."table WHERE c = 1 ORDER BY a, b DESC");
	end
end

Module in Que

qview:page	heading:Module in Que
#1.add	Lorem ipsum dolor sit amet
qform:search
#3.add:text
#3.add:button
#1.add	#3
#1.convert	html	page
			

Particle structure in MySQL

CREATE TABLE `p` (
	`p_pk` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'Primary Key (ID)',
	`pp_fk` INT(10) UNSIGNED NOT NULL COMMENT 'Entity (p.p_pk of a parent Particle)',
	`pt_fk` INT(10) UNSIGNED NOT NULL COMMENT 'Classification or Type (t.t_pk)',
	`pv` VARCHAR(200) NULL DEFAULT NULL COMMENT 'Value' COLLATE 'utf8_unicode_ci',
	`pr_fk` INT(10) UNSIGNED NULL DEFAULT NULL COMMENT 'Relation (p.p_pk of a foreign Particle)',
	`po` INT(10) NOT NULL DEFAULT '0' COMMENT 'Order',
	PRIMARY KEY (`p_pk`),
	INDEX `pt` (`pt_fk`),
	INDEX `pp` (`pp_fk`),
	INDEX `pr` (`pr_fk`)
)
COLLATE='utf8_unicode_ci';

Particle data in JSON

{
	"p_pk": 24,
	"pp_fk": 24,
	"pt_fk": 7,
	"pv": "QetriX",
	"pr_fk": null,
	"po": 999
}

Downloads

Sorry, no downloads are available at the moment. Please, stay tuned.
You can also check our progress on GitHub.

History

2016

  • Added trip planner to Qua.

2015

  • Qua, Qarate, Quid and Quly added to the QetriX Family.

2014

  • Mravenci (Ants), running on cross platform QWebApp, released.
  • Framework Mk. V released.
    • Renderers replaced by converters,
    • multiplatform coding standards.
  • Quiky for Windows reengineered.
    • WPF instead of WinForms,
    • using C# QetriX Framework.
  • Framework Mk. IV released.
    • Modules instead of plugins,
    • components introduced,
    • renderers introduced.

2013

  • Quiky added to the QetriX Family.
  • G-Particle introduced with GeoEdit.
  • QB offered personal semantic databases.
  • Framework Mk. III released.
  • QB Mk. II released.

2012

  • Quiky added to the QetriX Family.
  • QetriX got a logo.
  • Framework Mk. II released.

2011

  • QB finished.
  • QB reengineered.
  • QetriX name developed.

2010

  • QB released.

2009

  • Data Particle was invented and QPDB was born.

2008

Contact

Social networks

Stay Tuned