A framework based on tornado for easier development, scaling up and maintenance

Overview

turbo

中文文档

pypi Build Status codecov readthedocs

Turbo is a framework for fast building web site and RESTFul api, based on tornado.

  • Easily scale up and maintain
  • Rapid development for RESTFul api and web site
  • Django or flask application structure
  • Easily customizable
  • Simple ORM for MongoDB
  • Logger
  • Session(storage support for redis, disk and so on)
  • Support MongoDB, MySQL, PostgreSQL and so on
  • Support MongoDB asynchronous driver Motor base on turbo-motor
  • Support Python3

Getting started

pip install turbo
turbo-admin startproject <project_name>
cd <project_name>/app-server
touch __test__
python main.py

Documentation

Documentation and links to additional resources are available at http://app-turbo.readthedocs.org/

Tutorial

Comments
  • redefined app_config on fake template

    redefined app_config on fake template

    redefined app_config

    https://github.com/wecatch/app-turbo/blob/master/turbo/fake/project_template/app-server/apps/base.py#L5

    https://github.com/wecatch/app-turbo/blob/master/turbo/fake/project_template/app-server/apps/base.py#L75

    opened by tao12345666333 0
  • jinja2 support

    jinja2 support

    Support jinja2 template and tornado template relative path. You can use relative path like this {% include "../../base.html" %} in turbo jinja2 template

    enhancement 
    opened by zhyq0826 0
  • 数据库连接层可以提供多层,直接在 model 层进行路由

    数据库连接层可以提供多层,直接在 model 层进行路由

    使用场景

    case 1

    由于mongodb 集群的限制,除非使用 shard 模式,否则无法做到直接在数据库层进行两个节点写的操作,可以在 model 层提供两个写操作的连接,来达到数据夸集群同步。解决问题的是:如果一个集群无法连通或宕机,可以立即切换到备用集群。

    case 2

    数据切片。对大宗数据进行拆分可以,直接提供根据数据 hash 进行连接选择,来进行夸集群切片,即形成一个简单的 sharding 方案。

    opened by zhyq0826 0
  • 0.5.0 roadmap

    0.5.0 roadmap

    • MongoDB transaction support
    • remove deprecateed MongoDB method
    • Python3 byte and string support
    • request data support pure JSON
    • asynchronous queue support
    • crontab job support
    enhancement 
    opened by zhyq0826 0
  • Getting more done in GitHub with ZenHub

    Getting more done in GitHub with ZenHub

    Hola! @jerryshew has created a ZenHub account for the wecatch organization. ZenHub is the only project management tool integrated natively in GitHub – created specifically for fast-moving, software-driven teams.


    How do I use ZenHub?

    To get set up with ZenHub, all you have to do is download the browser extension and log in with your GitHub account. Once you do, you’ll get access to ZenHub’s complete feature-set immediately.

    What can ZenHub do?

    ZenHub adds a series of enhancements directly inside the GitHub UI:

    • Real-time, customizable task boards for GitHub issues;
    • Multi-Repository burndown charts, estimates, and velocity tracking based on GitHub Milestones;
    • Personal to-do lists and task prioritization;
    • Time-saving shortcuts – like a quick repo switcher, a “Move issue” button, and much more.

    Add ZenHub to GitHub

    Still curious? See more ZenHub features or read user reviews. This issue was written by your friendly ZenHub bot, posted by request from @jerryshew.

    ZenHub Board

    opened by flyfloor 1
Releases(v0.4.8)
Kafka Connect JDBC Docker Image.

kafka-connect-jdbc This is a dockerized version of the Confluent JDBC database connector. Usage This image is running the connect-standalone command w

Marc Horlacher 1 Jan 05, 2022
Py2neo is a comprehensive toolkit for working with Neo4j from within Python applications or from the command line.

Py2neo v3 Py2neo is a client library and toolkit for working with Neo4j from within Python applications and from the command line. The core library ha

64 Oct 14, 2022
dbd is a database prototyping tool that enables data analysts and engineers to quickly load and transform data in SQL databases.

dbd: database prototyping tool dbd is a database prototyping tool that enables data analysts and engineers to quickly load and transform data in SQL d

Zdenek Svoboda 47 Dec 07, 2022
SAP HANA Connector in pure Python

SAP HANA Database Client for Python Important Notice This public repository is read-only and no longer maintained. The active maintained alternative i

SAP Archive 299 Nov 20, 2022
Application which allows you to make PostgreSQL databases with Python

Automate PostgreSQL Databases with Python Application which allows you to make PostgreSQL databases with Python I used the psycopg2 library which is u

Marc-Alistair Coffi 0 Dec 31, 2021
A pandas-like deferred expression system, with first-class SQL support

Ibis: Python data analysis framework for Hadoop and SQL engines Service Status Documentation Conda packages PyPI Azure Coverage Ibis is a toolbox to b

Ibis Project 2.3k Jan 06, 2023
A Python-based RPC-like toolkit for interfacing with QuestDB.

pykit A Python-based RPC-like toolkit for interfacing with QuestDB. Requirements Python 3.9 Java Azul

QuestDB 11 Aug 03, 2022
A Python Object-Document-Mapper for working with MongoDB

MongoEngine Info: MongoEngine is an ORM-like layer on top of PyMongo. Repository: https://github.com/MongoEngine/mongoengine Author: Harry Marr (http:

MongoEngine 3.9k Jan 08, 2023
SQL queries to collections

SQC SQL Queries to Collections Examples from sqc import sqc data = [ {"a": 1, "b": 1}, {"a": 2, "b": 1}, {"a": 3, "b": 2}, ] Simple filte

Alexander Volkovsky 0 Jul 06, 2022
Databank is an easy-to-use Python library for making raw SQL queries in a multi-threaded environment.

Databank Databank is an easy-to-use Python library for making raw SQL queries in a multi-threaded environment. No ORM, no frills. Thread-safe. Only ra

snapADDY GmbH 4 Apr 04, 2022
An extension package of 🤗 Datasets that provides support for executing arbitrary SQL queries on HF datasets

datasets_sql A 🤗 Datasets extension package that provides support for executing arbitrary SQL queries on HF datasets. It uses DuckDB as a SQL engine

Mario Šaško 19 Dec 15, 2022
dask-sql is a distributed SQL query engine in python using Dask

dask-sql is a distributed SQL query engine in Python. It allows you to query and transform your data using a mixture of common SQL operations and Python code and also scale up the calculation easily

Nils Braun 271 Dec 30, 2022
A fast MySQL driver written in pure C/C++ for Python. Compatible with gevent through monkey patching.

:: Description :: A fast MySQL driver written in pure C/C++ for Python. Compatible with gevent through monkey patching :: Requirements :: Requires P

ESN Social Software 549 Nov 18, 2022
A Python library for Cloudant and CouchDB

Cloudant Python Client This is the official Cloudant library for Python. Installation and Usage Getting Started API Reference Related Documentation De

Cloudant 162 Dec 19, 2022
Redis Python Client

redis-py The Python interface to the Redis key-value store. Python 2 Compatibility Note redis-py 3.5.x will be the last version of redis-py that suppo

Andy McCurdy 11k Dec 29, 2022
A Python wheel containing PostgreSQL

postgresql-wheel A Python wheel for Linux containing a complete, self-contained, locally installable PostgreSQL database server. All servers run as th

Michel Pelletier 71 Nov 09, 2022
aiomysql is a library for accessing a MySQL database from the asyncio

aiomysql aiomysql is a "driver" for accessing a MySQL database from the asyncio (PEP-3156/tulip) framework. It depends on and reuses most parts of PyM

aio-libs 1.5k Jan 03, 2023
Makes it easier to write raw SQL in Python.

CoolSQL Makes it easier to write raw SQL in Python. Usage Quick Start from coolsql import Field name = Field("name") age = Field("age") condition =

Aber 7 Aug 21, 2022
Python cluster client for the official redis cluster. Redis 3.0+.

redis-py-cluster This client provides a client for redis cluster that was added in redis 3.0. This project is a port of redis-rb-cluster by antirez, w

Grokzen 1.1k Jan 05, 2023
A selection of SQLite3 databases to practice querying from.

Dummy SQL Databases This is a collection of dummy SQLite3 databases, for learning and practicing SQL querying, generated with the VS Code extension Ge

1 Feb 26, 2022