SlideShare a Scribd company logo
1 of 21
Download to read offline
My web application in 20 minutes
( code generation with Telosys )
https://www.telosys.org/ @telosys
@telosys https://www.telosys.org
By day
Senior architect
at
@ltguerin
Laurent Guérin Open Source supporter
Passionate by software engineering
and development industrialization
By night
Creator of
code generator
Who’s speaking?
@telosys https://www.telosys.org
• Productivity : write the templates once and reuse them many times
• Simplicity : a model brings a high level of abstraction (part of the
complexity is managed by the generator)
• Standardization & Consistency : get always the code you expect (same
principles, patterns, behaviors, conventions, coding rules, etc)
• Quality : Clean Code, Software Craftsmanship, testability, Unit Tests
generation, etc
Why should I use code generation?
But very often code generators are heavy and complicated tools :-(
That's why Telosys has been created…
@telosys https://www.telosys.org
Telosys philosophy
Keep it open, simple and pragmatic!
@telosys https://www.telosys.org
A “project booster”
Light tool designed to be usable by any developers
Not a strategic choice
(you can use it and drop it after use)
Quick start (very short learning curve)
Telosys in short
@telosys https://www.telosys.org
no "black box"
syndrome
everything is
customizable
Customization : generate the code you want
? !
models
templates resulting code
is exactly what
you want
any file, any language, any framework
@telosys https://www.telosys.org
Eclipse Plugin C L I
with extensions
for VSCode, Atom, Notepad++, etc
Telosys offers 2 tools
Controllers Services
Views
D.A.O.
Entities
DSL
model
Bundle of
templates
Bundle of
templates
Scripts
(SQL)
Bundle of
templates
Plant
UML
Demo - The big picture
Telosys CLI
Project
Generated
code
Generator with
model & templates
1
2
3
VS Code
Tests
Generation
Demo – Step 1 : define a model
Demo – Step 2 : define or reuse templates
Demo – Step 2 : define or reuse templates
Demo – Step 3 : code generation
Part 1 : use bundle “plantuml”
to generate “model.planuml” file
DSL
model
Bundle
“plantuml”
> b plant
> gen * *
Demo – Step 3 : code generation
Part 2 : use bundle
“python-persistence-sqlalchemy”
to generate python files
(entities, DAO, services, unit test, scripts)
DSL
model
Services D.A.O.
Entities
Bundle
“python-persistence-sqlalchemy”
Scripts
Tests
Demo : launch scripts ( database & unit tests )
> create_database.py
> init_database.py
> run_tests.py
Demo – Step 3 : code generation
Part 3 : use bundle
“python-web-mvc-bottle”
to generate python files & .tpl files
(controllers & views)
DSL
model
Bundle
“python-web-mvc-bottle”
Controllers
( xxx.py )
Views
( xxx.tpl )
Services
Entities
D.A.O.
Demo : after code generation… launch the web app
> app.py
Stay tuned
@telosys tag "telosys" groups/1340197/ channel "Telosys"
www.telosys.org
• Telosys CLI :
https://github.com/telosys-tools-bricks/telosys-cli
• Telosys Eclipse plugin :
https://github.com/telosys-eclipse-v3/TelosysToolsPlugin
• Bundles of templates :
https://github.com/telosys-templates-v3
All stars are welcome ;-)
Telosys items used for the demo
• Model :
• https://telosys.org/download/models-v3/ : Cars-dsl-model-telosys-330.zip
• Bundles of templates :
• PlantUML :
https://github.com/telosys-templates-v3/plantuml-T330
• Python entities, DAO (SQLAlchemy), services & DB init :
https://github.com/telosys-templates-v3/python-persistence-sqlalchemy
• Python MVC controllers and views (Bottle framework) :
https://github.com/telosys-templates-v3/python-web-mvc-bottle
• Python REST API (Bottle framework) :
https://github.com/telosys-templates-v3/python-web-rest-bottle
Python items used for the demo
> python --version
Python 3.9.0
> pip list
Package Version
---------- -------
bottle 0.12.19
greenlet 1.1.2
pip 21.3.1
setuptools 49.2.1
SQLAlchemy 1.4.26
https://bottlepy.org/docs/dev/
https://www.sqlalchemy.org/

More Related Content

What's hot

Introduction to Redis
Introduction to RedisIntroduction to Redis
Introduction to Redis
TO THE NEW | Technology
 

What's hot (20)

React-cours.pdf
React-cours.pdfReact-cours.pdf
React-cours.pdf
 
Introduction à Neo4j
Introduction à Neo4jIntroduction à Neo4j
Introduction à Neo4j
 
Jeu jee session
Jeu jee sessionJeu jee session
Jeu jee session
 
Architectures distribuées
Architectures distribuéesArchitectures distribuées
Architectures distribuées
 
Introduction à React
Introduction à ReactIntroduction à React
Introduction à React
 
Introduction àJava
Introduction àJavaIntroduction àJava
Introduction àJava
 
Traitement distribue en BIg Data - KAFKA Broker and Kafka Streams
Traitement distribue en BIg Data - KAFKA Broker and Kafka StreamsTraitement distribue en BIg Data - KAFKA Broker and Kafka Streams
Traitement distribue en BIg Data - KAFKA Broker and Kafka Streams
 
Support de cours technologie et application m.youssfi
Support de cours technologie et application m.youssfiSupport de cours technologie et application m.youssfi
Support de cours technologie et application m.youssfi
 
Une introduction à Hive
Une introduction à HiveUne introduction à Hive
Une introduction à Hive
 
Introduction to Redis
Introduction to RedisIntroduction to Redis
Introduction to Redis
 
Support de cours EJB 3 version complète Par Mr Youssfi, ENSET, Université Ha...
Support de cours EJB 3 version complète Par Mr  Youssfi, ENSET, Université Ha...Support de cours EJB 3 version complète Par Mr  Youssfi, ENSET, Université Ha...
Support de cours EJB 3 version complète Par Mr Youssfi, ENSET, Université Ha...
 
eServices-Tp1: Web Services
eServices-Tp1: Web ServiceseServices-Tp1: Web Services
eServices-Tp1: Web Services
 
Présentation de Django @ Orange Labs (FR)
Présentation de Django @ Orange Labs (FR)Présentation de Django @ Orange Labs (FR)
Présentation de Django @ Orange Labs (FR)
 
Support developpement applications mobiles avec ionic v3 et v4
Support developpement applications mobiles avec ionic v3 et v4Support developpement applications mobiles avec ionic v3 et v4
Support developpement applications mobiles avec ionic v3 et v4
 
alphorm.com - Formation Oracle Database 11g DBA 1 (1Z0-052)
alphorm.com - Formation Oracle Database 11g DBA 1 (1Z0-052)alphorm.com - Formation Oracle Database 11g DBA 1 (1Z0-052)
alphorm.com - Formation Oracle Database 11g DBA 1 (1Z0-052)
 
Android-Tp1: éléments graphiques de base et intents
Android-Tp1: éléments graphiques de base et intentsAndroid-Tp1: éléments graphiques de base et intents
Android-Tp1: éléments graphiques de base et intents
 
Chapitre 2 hadoop
Chapitre 2 hadoopChapitre 2 hadoop
Chapitre 2 hadoop
 
Systèmes multi agents concepts et mise en oeuvre avec le middleware jade
Systèmes multi agents concepts et mise en oeuvre avec le middleware jadeSystèmes multi agents concepts et mise en oeuvre avec le middleware jade
Systèmes multi agents concepts et mise en oeuvre avec le middleware jade
 
Java entreprise edition et industrialisation du génie logiciel par m.youssfi
Java entreprise edition et industrialisation du génie logiciel par m.youssfiJava entreprise edition et industrialisation du génie logiciel par m.youssfi
Java entreprise edition et industrialisation du génie logiciel par m.youssfi
 
Alphorm.com-Formation MongoDB Administration
Alphorm.com-Formation MongoDB AdministrationAlphorm.com-Formation MongoDB Administration
Alphorm.com-Formation MongoDB Administration
 

Similar to My web application in 20 minutes with Telosys

Machine Learning , Analytics & Cyber Security the Next Level Threat Analytics...
Machine Learning , Analytics & Cyber Security the Next Level Threat Analytics...Machine Learning , Analytics & Cyber Security the Next Level Threat Analytics...
Machine Learning , Analytics & Cyber Security the Next Level Threat Analytics...
PranavPatil822557
 
Big datatraining.in devops-part1
Big datatraining.in devops-part1Big datatraining.in devops-part1
Big datatraining.in devops-part1
MvkZ
 
Big datatraining.in devops-part1
Big datatraining.in devops-part1Big datatraining.in devops-part1
Big datatraining.in devops-part1
MvkZ
 
Big datatraining.in devops-part1
Big datatraining.in devops-part1Big datatraining.in devops-part1
Big datatraining.in devops-part1
MvkZ
 
Big datatraining.in devops-part1
Big datatraining.in devops-part1Big datatraining.in devops-part1
Big datatraining.in devops-part1
MvkZ
 
Kubernetes @ meetic
Kubernetes @ meeticKubernetes @ meetic
Kubernetes @ meetic
Sébastien Le Gall
 
Introduction to Software Build Technology
Introduction to Software Build TechnologyIntroduction to Software Build Technology
Introduction to Software Build Technology
Philip Johnson
 

Similar to My web application in 20 minutes with Telosys (20)

Machine Learning , Analytics & Cyber Security the Next Level Threat Analytics...
Machine Learning , Analytics & Cyber Security the Next Level Threat Analytics...Machine Learning , Analytics & Cyber Security the Next Level Threat Analytics...
Machine Learning , Analytics & Cyber Security the Next Level Threat Analytics...
 
Telosys project booster Paris Open Source Summit 2019
Telosys project booster Paris Open Source Summit 2019Telosys project booster Paris Open Source Summit 2019
Telosys project booster Paris Open Source Summit 2019
 
Big datatraining.in devops-part1
Big datatraining.in devops-part1Big datatraining.in devops-part1
Big datatraining.in devops-part1
 
Big datatraining.in devops-part1
Big datatraining.in devops-part1Big datatraining.in devops-part1
Big datatraining.in devops-part1
 
Big datatraining.in devops-part1
Big datatraining.in devops-part1Big datatraining.in devops-part1
Big datatraining.in devops-part1
 
Big datatraining.in devops-part1
Big datatraining.in devops-part1Big datatraining.in devops-part1
Big datatraining.in devops-part1
 
Big datatraining.in devops-part1
Big datatraining.in devops-part1Big datatraining.in devops-part1
Big datatraining.in devops-part1
 
Big datatraining.in devops-part1
Big datatraining.in devops-part1Big datatraining.in devops-part1
Big datatraining.in devops-part1
 
Big datatraining.in devops-part1
Big datatraining.in devops-part1Big datatraining.in devops-part1
Big datatraining.in devops-part1
 
Agile Secure Cloud Application Development Management
Agile Secure Cloud Application Development ManagementAgile Secure Cloud Application Development Management
Agile Secure Cloud Application Development Management
 
Containers: DevOp Enablers of Technical Solutions
Containers: DevOp Enablers of Technical SolutionsContainers: DevOp Enablers of Technical Solutions
Containers: DevOp Enablers of Technical Solutions
 
.NET Recommended Resources
.NET Recommended Resources.NET Recommended Resources
.NET Recommended Resources
 
Kubernetes @ meetic
Kubernetes @ meeticKubernetes @ meetic
Kubernetes @ meetic
 
Build Time Hacking
Build Time HackingBuild Time Hacking
Build Time Hacking
 
Telosys tutorial - Code generation for a Python web application based on Bott...
Telosys tutorial - Code generation for a Python web application based on Bott...Telosys tutorial - Code generation for a Python web application based on Bott...
Telosys tutorial - Code generation for a Python web application based on Bott...
 
How to Implement Micro Frontend Architecture using Angular Framework
How to Implement Micro Frontend Architecture using Angular FrameworkHow to Implement Micro Frontend Architecture using Angular Framework
How to Implement Micro Frontend Architecture using Angular Framework
 
Simple tools to fight bigger quality battle
Simple tools to fight bigger quality battleSimple tools to fight bigger quality battle
Simple tools to fight bigger quality battle
 
JavaOne 2016 - CON3080 - Testing Java Web Applications with Selenium: A Cookbook
JavaOne 2016 - CON3080 - Testing Java Web Applications with Selenium: A CookbookJavaOne 2016 - CON3080 - Testing Java Web Applications with Selenium: A Cookbook
JavaOne 2016 - CON3080 - Testing Java Web Applications with Selenium: A Cookbook
 
Introduction to Software Build Technology
Introduction to Software Build TechnologyIntroduction to Software Build Technology
Introduction to Software Build Technology
 
Getting started with Appcelerator Titanium
Getting started with Appcelerator TitaniumGetting started with Appcelerator Titanium
Getting started with Appcelerator Titanium
 

More from Laurent Guérin

More from Laurent Guérin (12)

Microservices-DDD-Telosys-Devoxx-FR-2022
Microservices-DDD-Telosys-Devoxx-FR-2022Microservices-DDD-Telosys-Devoxx-FR-2022
Microservices-DDD-Telosys-Devoxx-FR-2022
 
MQTT avec Mosquitto et Paho - DevFest Brest 2019
MQTT avec Mosquitto et Paho - DevFest Brest 2019MQTT avec Mosquitto et Paho - DevFest Brest 2019
MQTT avec Mosquitto et Paho - DevFest Brest 2019
 
MQTT avec Mosquitto et Paho - Laurent Guerin - JUG Nantes Nov 2018
MQTT avec Mosquitto et Paho - Laurent Guerin - JUG Nantes Nov 2018MQTT avec Mosquitto et Paho - Laurent Guerin - JUG Nantes Nov 2018
MQTT avec Mosquitto et Paho - Laurent Guerin - JUG Nantes Nov 2018
 
Meetup python-bottle-telosys-2018-lgu-v1.0
Meetup python-bottle-telosys-2018-lgu-v1.0Meetup python-bottle-telosys-2018-lgu-v1.0
Meetup python-bottle-telosys-2018-lgu-v1.0
 
Sogeti labs developer-today-v1.1
Sogeti labs developer-today-v1.1Sogeti labs developer-today-v1.1
Sogeti labs developer-today-v1.1
 
DevOps MeetUp NL - Docker (Oct 2014)
DevOps MeetUp NL - Docker (Oct 2014)DevOps MeetUp NL - Docker (Oct 2014)
DevOps MeetUp NL - Docker (Oct 2014)
 
Telosys tools jug-nantes-2014-v1.2
Telosys tools jug-nantes-2014-v1.2Telosys tools jug-nantes-2014-v1.2
Telosys tools jug-nantes-2014-v1.2
 
Bean Validation - Cours v 1.1
Bean Validation - Cours v 1.1Bean Validation - Cours v 1.1
Bean Validation - Cours v 1.1
 
Genie logiciel eseo-v1.1-1spp
Genie logiciel eseo-v1.1-1sppGenie logiciel eseo-v1.1-1spp
Genie logiciel eseo-v1.1-1spp
 
Devoxx 2011 - Scaffolding with Telosys
Devoxx 2011 - Scaffolding with TelosysDevoxx 2011 - Scaffolding with Telosys
Devoxx 2011 - Scaffolding with Telosys
 
Open World Forum 2009 Migration With Telosys
Open World Forum 2009 Migration With TelosysOpen World Forum 2009 Migration With Telosys
Open World Forum 2009 Migration With Telosys
 
Solutions Linux Développement Rapide Java
Solutions Linux Développement Rapide JavaSolutions Linux Développement Rapide Java
Solutions Linux Développement Rapide Java
 

Recently uploaded

Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdfMastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
mbmh111980
 
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
Alluxio, Inc.
 

Recently uploaded (20)

10 Essential Software Testing Tools You Need to Know About.pdf
10 Essential Software Testing Tools You Need to Know About.pdf10 Essential Software Testing Tools You Need to Know About.pdf
10 Essential Software Testing Tools You Need to Know About.pdf
 
Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)
Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)
Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)
 
Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...
Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...
Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...
 
Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdfMastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
 
Implementing KPIs and Right Metrics for Agile Delivery Teams.pdf
Implementing KPIs and Right Metrics for Agile Delivery Teams.pdfImplementing KPIs and Right Metrics for Agile Delivery Teams.pdf
Implementing KPIs and Right Metrics for Agile Delivery Teams.pdf
 
OpenChain @ LF Japan Executive Briefing - May 2024
OpenChain @ LF Japan Executive Briefing - May 2024OpenChain @ LF Japan Executive Briefing - May 2024
OpenChain @ LF Japan Executive Briefing - May 2024
 
APVP,apvp apvp High quality supplier safe spot transport, 98% purity
APVP,apvp apvp High quality supplier safe spot transport, 98% purityAPVP,apvp apvp High quality supplier safe spot transport, 98% purity
APVP,apvp apvp High quality supplier safe spot transport, 98% purity
 
IT Software Development Resume, Vaibhav jha 2024
IT Software Development Resume, Vaibhav jha 2024IT Software Development Resume, Vaibhav jha 2024
IT Software Development Resume, Vaibhav jha 2024
 
SQL Injection Introduction and Prevention
SQL Injection Introduction and PreventionSQL Injection Introduction and Prevention
SQL Injection Introduction and Prevention
 
AI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAG
AI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAGAI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAG
AI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAG
 
Agnieszka Andrzejewska - BIM School Course in Kraków
Agnieszka Andrzejewska - BIM School Course in KrakówAgnieszka Andrzejewska - BIM School Course in Kraków
Agnieszka Andrzejewska - BIM School Course in Kraków
 
A Guideline to Zendesk to Re:amaze Data Migration
A Guideline to Zendesk to Re:amaze Data MigrationA Guideline to Zendesk to Re:amaze Data Migration
A Guideline to Zendesk to Re:amaze Data Migration
 
INGKA DIGITAL: Linked Metadata by Design
INGKA DIGITAL: Linked Metadata by DesignINGKA DIGITAL: Linked Metadata by Design
INGKA DIGITAL: Linked Metadata by Design
 
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
 
How to pick right visual testing tool.pdf
How to pick right visual testing tool.pdfHow to pick right visual testing tool.pdf
How to pick right visual testing tool.pdf
 
CompTIA Security+ (Study Notes) for cs.pdf
CompTIA Security+ (Study Notes) for cs.pdfCompTIA Security+ (Study Notes) for cs.pdf
CompTIA Security+ (Study Notes) for cs.pdf
 
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
 
Secure Software Ecosystem Teqnation 2024
Secure Software Ecosystem Teqnation 2024Secure Software Ecosystem Teqnation 2024
Secure Software Ecosystem Teqnation 2024
 
Crafting the Perfect Measurement Sheet with PLM Integration
Crafting the Perfect Measurement Sheet with PLM IntegrationCrafting the Perfect Measurement Sheet with PLM Integration
Crafting the Perfect Measurement Sheet with PLM Integration
 
Top Mobile App Development Companies 2024
Top Mobile App Development Companies 2024Top Mobile App Development Companies 2024
Top Mobile App Development Companies 2024
 

My web application in 20 minutes with Telosys

  • 1. My web application in 20 minutes ( code generation with Telosys ) https://www.telosys.org/ @telosys
  • 2. @telosys https://www.telosys.org By day Senior architect at @ltguerin Laurent Guérin Open Source supporter Passionate by software engineering and development industrialization By night Creator of code generator Who’s speaking?
  • 3. @telosys https://www.telosys.org • Productivity : write the templates once and reuse them many times • Simplicity : a model brings a high level of abstraction (part of the complexity is managed by the generator) • Standardization & Consistency : get always the code you expect (same principles, patterns, behaviors, conventions, coding rules, etc) • Quality : Clean Code, Software Craftsmanship, testability, Unit Tests generation, etc Why should I use code generation? But very often code generators are heavy and complicated tools :-( That's why Telosys has been created…
  • 5. @telosys https://www.telosys.org A “project booster” Light tool designed to be usable by any developers Not a strategic choice (you can use it and drop it after use) Quick start (very short learning curve) Telosys in short
  • 6. @telosys https://www.telosys.org no "black box" syndrome everything is customizable Customization : generate the code you want ? ! models templates resulting code is exactly what you want any file, any language, any framework
  • 7. @telosys https://www.telosys.org Eclipse Plugin C L I with extensions for VSCode, Atom, Notepad++, etc Telosys offers 2 tools
  • 8.
  • 9. Controllers Services Views D.A.O. Entities DSL model Bundle of templates Bundle of templates Scripts (SQL) Bundle of templates Plant UML Demo - The big picture Telosys CLI Project Generated code Generator with model & templates 1 2 3 VS Code Tests Generation
  • 10. Demo – Step 1 : define a model
  • 11. Demo – Step 2 : define or reuse templates
  • 12. Demo – Step 2 : define or reuse templates
  • 13. Demo – Step 3 : code generation Part 1 : use bundle “plantuml” to generate “model.planuml” file DSL model Bundle “plantuml” > b plant > gen * *
  • 14. Demo – Step 3 : code generation Part 2 : use bundle “python-persistence-sqlalchemy” to generate python files (entities, DAO, services, unit test, scripts) DSL model Services D.A.O. Entities Bundle “python-persistence-sqlalchemy” Scripts Tests
  • 15. Demo : launch scripts ( database & unit tests ) > create_database.py > init_database.py > run_tests.py
  • 16. Demo – Step 3 : code generation Part 3 : use bundle “python-web-mvc-bottle” to generate python files & .tpl files (controllers & views) DSL model Bundle “python-web-mvc-bottle” Controllers ( xxx.py ) Views ( xxx.tpl ) Services Entities D.A.O.
  • 17. Demo : after code generation… launch the web app > app.py
  • 18.
  • 19. Stay tuned @telosys tag "telosys" groups/1340197/ channel "Telosys" www.telosys.org • Telosys CLI : https://github.com/telosys-tools-bricks/telosys-cli • Telosys Eclipse plugin : https://github.com/telosys-eclipse-v3/TelosysToolsPlugin • Bundles of templates : https://github.com/telosys-templates-v3 All stars are welcome ;-)
  • 20. Telosys items used for the demo • Model : • https://telosys.org/download/models-v3/ : Cars-dsl-model-telosys-330.zip • Bundles of templates : • PlantUML : https://github.com/telosys-templates-v3/plantuml-T330 • Python entities, DAO (SQLAlchemy), services & DB init : https://github.com/telosys-templates-v3/python-persistence-sqlalchemy • Python MVC controllers and views (Bottle framework) : https://github.com/telosys-templates-v3/python-web-mvc-bottle • Python REST API (Bottle framework) : https://github.com/telosys-templates-v3/python-web-rest-bottle
  • 21. Python items used for the demo > python --version Python 3.9.0 > pip list Package Version ---------- ------- bottle 0.12.19 greenlet 1.1.2 pip 21.3.1 setuptools 49.2.1 SQLAlchemy 1.4.26 https://bottlepy.org/docs/dev/ https://www.sqlalchemy.org/