You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/Doc-Home.md
+284-1Lines changed: 284 additions & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -20,6 +20,10 @@
20
20
21
21
22
22
23
+
24
+
# Start: Install, Samples, Training
25
+
26
+
23
27
## Install and Verify
24
28
25
29
If you have the correct Python (version 3.8-3.12), install is standard ([more detailed instructions here](Install-Express.md){:target="_blank" rel="noopener"}):
@@ -41,7 +45,285 @@ als create --project-name=sample_ai --db-url=sqlite:///sample_ai.sqlite
41
45
code sample_ai
42
46
```
43
47
44
-
Then explore the *demos, samples and tutorials*, below. For docs, [click here](Doc-Home.md){:target="_blank" rel="noopener"}.
48
+
Then explore the *demos, samples and tutorials*, below.
49
+
50
+
51
+
<detailsmarkdown>
52
+
53
+
<summary>Demos, Tutorials, Samples</summary>
54
+
55
+
Type:
56
+
57
+
* Demo: Small Databases, Introduces Key Features
58
+
* Tutorial: Detailed Walk-throughs
59
+
* Samples: other databases (brief description)
60
+
61
+
> Recommendation: **start with the first 2 items**
62
+
63
+
| Project | Notes | Type |
64
+
:-------|:-----------|:-------|
65
+
|[**AI Sample**](Sample-AI.md){:target="_blank" rel="noopener"} | 1. Use Copilot to create new databases from natural language<br>2. Illustrate a very rapid create / customize / iterate cycle<br>3. Introduce Integration | Demo |
66
+
|[**Tutorial**](Tutorial.md){:target="_blank" rel="noopener"} | 1. How to Use the Key Features<br>2. Key code samples for adapting into your project | Tutorial |
67
+
||||
68
+
|[App Integration](Sample-Integration.md){:target="_blank" rel="noopener"} | Illustrates *running* Kafka messaging, self-serve and customized APIs, choreographed with rules and Python | Tutorial |
69
+
|[Deployment](Tutorial-Deployment.md){:target="_blank" rel="noopener"} | Containerize and deploy your applications | Tutorial |
70
+
|[Agile](Tech-Agile.md){:target="_blank" rel="noopener"} | Behavior Driven Design and testing, using Behave | Tutorial |
71
+
|[AI Drives Agile Vision](Tech-AI.md){:target="_blank" rel="noopener"} | Use Copilot to create new databases from natural language, to bootstrap an agile create / deploy and collaborate / iterate cycle | Demo |
72
+
|[Basic Demo](Sample-Basic-Demo.md){:target="_blank" rel="noopener"} | Focused use of API, Admin App and Rules on small customer/orders database | Demo |
73
+
|[Allocation](Logic-Allocation.md){:target="_blank" rel="noopener"} |*Power Rule* to allocate a payment to a set of outstanding orders | Sample |
74
+
|[MySQL Docker](Database-Connectivity.md){:target="_blank" rel="noopener"} | Create projects from sample databases: *chinook* (albums and artists), and *classicmodels* (customers and orders) | Sample |
75
+
| Sqlite databases | Create projects from pre-installed databases via [abbreviations](Data-Model-Examples.md){:target="_blank" rel="noopener"}:<br>- chinook, classicmodels, todo | Sample |
76
+
|[BudgetApp](Tech-Budget-App.md){:target="_blank" rel="noopener"} | illustrates automatic creation of parent rows for rollups | Sample |
77
+
|[Banking App](https://github.com/ApiLogicServer/banking){:target="_blank" rel="noopener"} | Illustrates more complex logic (Funds Transfer) | Sample - obtain via `git clone`|
78
+
79
+
80
+
Finally, try your own database.
81
+
82
+
</details>
83
+
84
+
85
+
<detailsmarkdown>
86
+
87
+
<summary> Training </summary>
88
+
89
+
After installing, you can optionally run the first demo, above. The key training activities are:
90
+
91
+
1. Perform the [**Tutorial**](Tutorial.md){:target="_blank" rel="noopener"}
* Spreadsheet-like rules and Python for integration, and multi-table derivations / constraints
96
+
3.**API Customization:** explore the code in `api/customize_api.py`
97
+
* Note this is largely standard Flask, enhanced with logic
98
+
99
+
</details>
100
+
101
+
<detailsmarkdown>
102
+
103
+
<summary> Resources </summary>
104
+
105
+
You might find the following helpful in exploring the project:
106
+
107
+
***Installed Sample Databases** -
108
+
Here are [some installed sample databases](Data-Model-Examples.md){:target="_blank" rel="noopener"} you can use with simplified abbreviations for `db_url`.
109
+
110
+
***Dockerized Test Databases** -
111
+
Then, you might like to try out some of our [dockerized test databases](https://valhuber.github.io/ApiLogicServer/Database-Connectivity.md){:target="_blank" rel="noopener"}.
112
+
113
+
*[auth](Security-Authentication-Provider.md#sqlite-auth-provider){:target="_blank" rel="noopener"} - sqlite authentication database (you can also use other DBMSs)
114
+
115
+
</details>
116
+
117
+
<detailsmarkdown>
118
+
119
+
<summary> Release Notes </summary>
120
+
121
+
04/16/2024 - 10.03.80: cli issues in create-and-run/run, Oracledb 2.1.12
122
+
123
+
04/05/2024 - 10.03.66: ApiLogicServer start, als create from-model (eg copilot)
Or, you can use [the beta version on codespaces](https://github.com/ApiLogicServer/beta){:target="_blank" rel="noopener"}.
232
+
233
+
</details>
234
+
235
+
---
236
+
237
+
238
+
239
+
# Works With
240
+
241
+
<detailsmarkdown>
242
+
243
+
<summary>API Logic Server works with key elements of your existing infrastructure</summary>
244
+
245
+
| Works With | Notes |
246
+
:-------|:-----------|
247
+
|[AI](Tutorial-AI.md){:target="_blank" rel="noopener"} | Use Copilot to create databases, and use API Logic Server to turn these into projects |
248
+
|[Other Systems](Sample-Integration.md){:target="_blank" rel="noopener"} | APIs and Messages - with logic |
249
+
|[Databases](Database-Connectivity.md){:target="_blank" rel="noopener"} | Tested with MySQL, Sql/Server, Postgres, SQLite and Oracle |
250
+
| Client Frameworks | Creates instant APIs that factors out business logic, where it is automatically shared for User Interfaces, APIs, and Messages |
251
+
|[Your IDE](IDE-Customize.md){:target="_blank" rel="noopener"} | Creates standard projects you can customize in your IDE, such as VSCode and PyCharm |
252
+
| [Messaging](Sample-Integration.md){:target="_blank" rel="noopener"} | Produce and Consume Kafka Messages
253
+
|[Deployment](Tutorial-Deployment.md){:target="_blank" rel="noopener"} | Scripts to create container images, and deploy them to the cloud |
254
+
|[Agile and Test Methodologies](Logic-Tutorial.md){:target="_blank" rel="noopener"} | Use Behave to capture requirements, rapidly implement them with API Logic Server, collaborate with Business Users, and test with the Behave framework |
*[How Automation Activates Agile](https://dzone.com/articles/automation-activates-agile) - providing working software rapidly drives agile collaboration to define systems that meet actual needs, reducing requirements risk
318
+
*[How to create application systems in moments](https://dzone.com/articles/create-customizable-database-app-systems-with-1-command)
319
+
*[Stop coding database backends…Declare them with one command.](https://medium.com/@valjhuber/stop-coding-database-backends-declare-them-with-one-command-938cbd877f6d)
*[Automate Business Logic With Logic Bank](https://dzone.com/articles/automate-business-logic-with-logic-bank) - general introduction, discussions of extensibility, manageability and scalability
324
+
*[Agile Design Automation With Logic Bank](https://dzone.com/articles/logical-data-indendence) - focuses on automation, design flexibility and agile iterations
325
+
*[Instant Web Apps](https://dzone.com/articles/instant-db-web-apps)
326
+
</details>
45
327
46
328
47
329
@@ -90,3 +372,4 @@ Observe that logic plugs into SQLAlchemy. **Logic is thus automatically shared*
90
372
In most cases, the API Logic Server executes in a **container**, so scales horizontally like any other Flask-based server.
91
373
92
374

0 commit comments