GAETK2 - Google App Engine Toolkit 2¶
gaetk2 is a modern approach to developing Python Code on Google App Engine. It is a reimplementation of appengine-toolkit <https://github.com/mdornseif/appengine-toolkit>. appengine-toolkit was a transfer of the techniques we used before in Django to the early Google App Engine Plattform. It was different time when it was developed - back then XML was still cool and REST was all the rage and App Engine was nearly feature free. Even webapp2 had not been developed.
gaetk2 is used in some big internal projects and tries to cover most of what an Web Application might need.
Features¶
- Infrastructure for Continuous Integration and Continuous Delivery
- Sane Error Logging and Reporting with nice tracebacks during development. Including Error Reporting to Sentry. See Error Handling Guide.
- A configuration Framework in
config
- A Simple, roubust framework for acceptance tests in
resttestlib
gaetk2.forms.wtfbootstrap3()
to teach a WTForm bootstrap rendering.gaetk2.helpers.check404()
to save boilerplate on loading datastore entries etc.- Lot’s of Template-Filters we use day to day in
jinja_filters
. - Common conventions for ndb/datastore usage in
datastore
. - Export of Datastore-Queries to XLS or CSV in
gaetk2.modelexporter
. - An port of the Django Admin Site in
gaetk2.admin
. - Day-do-day functionality in
tools
. Mostly meant for internal use but also available to you. Most noteworty:gaetk2.tools.datetools.convert_to_date()
might be the most used function in our whole codebase.gaetk2.tools.caching
provides cache decorators.gaetk2.tools.unicode
encode integers in base32, get rid of 😎 etc in strings.gaetk2.tools.structured_xls.XLSwriter
-csv.writer
compatible interface to generate XLS-Files.
Todo
- structured
- ids
- hujson2
- http
- auth0tools
- GAETK2 - Concepts
- Error Handling Guide
- Authentication, Authorization & Access Control
- Frontend Guidelines
- Backup and Replication Guide
- Deployment, CI & CD
- HOWTO - Guides
- Migrating from appengine-toolkit 1 to Version2
- Build Commands & Deployment
- gaetk2 package
- Subpackages
- gaetk2.config module
- gaetk2.views - pre made request handlers
- WSGI Application
- WSGI Middlewares
- gaetk2.handlers - WSGI Request Handlers
- gaetk2.jinja_filters module - template filters
- Module contents
- gaetk2.forms package - form handling via WTForms
- gaetk2.helpers module
- gaetk2.tools.taskqueue - access App Engine taskqueues
- gaetk2.datastore module
- gaetk2.resttestlib - Simple Acceptance Tests
- gaetk2.modelexporter module
- gaetk2.admin package
- gaetk2.tools Package
- gaetk2.exc module
- gaetk2.models module
- Module contents
- Subpackages