Thanks for asking.
MinimaList originally was just a simple code module. It was then used by me to create a "RESTful" API server which doesn't need to connect to a SQL database. MinimaList just working with Maps and Lists. It is similar to working with NoSQL. I don't have any intention to make it compete with other NoSQL database like Firebase or MongoDB. It is just a simple way to store data "temporarily" in memory as objects or variables. Optionally, can also be store in KeyValueStore. No SQL knowledge is needed.
Example:
Dim M1 As Map = Main.CategoryList.Find(id)
It powered a demo project called Shao.
Current version: 1.20 Status: Released Price: $100 Shao - ( 少 in Chinese ) means less is a micro blogging app like twitter, threads or weibo, but less... About this project Backend: B4J Server (Windows or Linux VPS is required for production) Web API Server v3.10 Return JSON format...
www.b4x.com
Version: 2.08 Description: Build REST API Server with MinimaList using B4X project template Sample project: shao (micro-blogging web app) If you want to connect to an SQL database, see Web API Server 2 Template: MinimaList API Server (2.08).b4xtemplate Depends on: WebApiUtils.b4xlib...
www.b4x.com
ORM stands for Object Relational Mapping. I learn about this concept in Django (a Python web framework) where developer write code to generate model and manipulate the database by doing migration. I think .NET has Entity framework and PHP also has Eloquent. SQL query is not used. However, I think my version is more like an SQL builder. Currently, the public version supports SQLite and MySQL while I have unreleased version which support Firebird and PostgreSQL.
The equivalent code to find a category by id in MinimaList above can be written with MiniORM as following:
DB.Table = "tbl_categories"
DB.Where = Array("id = ?")
DB.Parameters = Array(id)
DB.Query
Dim Map1 As Map = DB.First
With the same code, you don't need to write separate SQL query when switching to another database. e.g from SQLite to MySQL.
Example: To create a categories table,
DB.Table = "tbl_categories"
DB.Columns.Add(DB.CreateORMColumn2(CreateMap("Name": "category_name")))
DB.Columns.Add(DB.CreateORMColumn2(CreateMap("Name": "category_active", "Type": DB.INTEGER, "Default": 0)))
DB.Create
This code works for both databases, taking care the differences.
Initially Web API Server 2.0 was released with MinimaList but later separated into it's own template and Web API Server 2.0 is now using MiniORM.
Both MinimaList and MiniORM have evolved into b4xlib as MinimaListUtils and MiniORMUtils and can be used in other B4X projects.
EndsMeet is a name I gave to a web framework I created.
It is to make both the Front end and Back end "meet". Using the template engine I wrapped from the open source Apache Velocity project.
It also has other pieces combined together to make a complete web system.
The best project created using this framework is Support Ticketing System.
Current version: 1.03 Status: Released Price: $150 What's new? Preview Demo Video FAQs
www.b4x.com
As written above, it is a library which can be use to create web app.
You can read more:
A wrap of Apache Velocity Engine library for B4A and B4J What is Velocity? Velocity is a Java-based template engine. It permits anyone to use a simple yet powerful template language to reference objects defined in Java code. Source: https://velocity.apache.org/ Download additional libraries...
www.b4x.com
Example:
#@mainLayout()
<h1>Index page</h1>
#end