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)
A wrapper for SQLite and MySQL, Most of the queries wrapped into commands for ease.

Before you proceed, make sure you know Some real SQL, before looking at the code, otherwise you probably won't understand anything. Installation pip i

Refined 4 Jul 30, 2022
db.py is an easier way to interact with your databases

db.py What is it Databases Supported Features Quickstart - Installation - Demo How To Contributing TODO What is it? db.py is an easier way to interact

yhat 1.2k Jan 03, 2023
MySQL database connector for Python (with Python 3 support)

mysqlclient This project is a fork of MySQLdb1. This project adds Python 3 support and fixed many bugs. PyPI: https://pypi.org/project/mysqlclient/ Gi

PyMySQL 2.2k Dec 25, 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
pandas-gbq is a package providing an interface to the Google BigQuery API from pandas

pandas-gbq pandas-gbq is a package providing an interface to the Google BigQuery API from pandas Installation Install latest release version via conda

Google APIs 348 Jan 03, 2023
Records is a very simple, but powerful, library for making raw SQL queries to most relational databases.

Records: SQL for Humans™ Records is a very simple, but powerful, library for making raw SQL queries to most relational databases. Just write SQL. No b

Kenneth Reitz 6.9k Jan 03, 2023
a small, expressive orm -- supports postgresql, mysql and sqlite

peewee Peewee is a simple and small ORM. It has few (but expressive) concepts, making it easy to learn and intuitive to use. a small, expressive ORM p

Charles Leifer 9.7k Dec 30, 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
Pure Python MySQL Client

PyMySQL Table of Contents Requirements Installation Documentation Example Resources License This package contains a pure-Python MySQL client library,

PyMySQL 7.2k Jan 09, 2023
Pure-python PostgreSQL driver

pg-purepy pg-purepy is a pure-Python PostgreSQL wrapper based on the anyio library. A lot of this library was inspired by the pg8000 library. Credits

Lura Skye 11 May 23, 2022
CouchDB client built on top of aiohttp (asyncio)

aiocouchdb source: https://github.com/aio-libs/aiocouchdb documentation: http://aiocouchdb.readthedocs.org/en/latest/ license: BSD CouchDB client buil

aio-libs 53 Apr 05, 2022
Baserow is an open source no-code database tool and Airtable alternative

Baserow is an open source no-code database tool and Airtable alternative

1.3k Jan 01, 2023
Py2neo is a client library and toolkit for working with Neo4j from within Python

Py2neo Py2neo is a client library and toolkit for working with Neo4j from within Python applications. The library supports both Bolt and HTTP and prov

py2neo.org 1.2k Jan 02, 2023
Official Python low-level client for Elasticsearch

Python Elasticsearch Client Official low-level client for Elasticsearch. Its goal is to provide common ground for all Elasticsearch-related code in Py

elastic 3.8k Jan 01, 2023
The Database Toolkit for Python

SQLAlchemy The Python SQL Toolkit and Object Relational Mapper Introduction SQLAlchemy is the Python SQL toolkit and Object Relational Mapper that giv

SQLAlchemy 6.5k Jan 01, 2023
Asynchronous Python client for InfluxDB

aioinflux Asynchronous Python client for InfluxDB. Built on top of aiohttp and asyncio. Aioinflux is an alternative to the official InfluxDB Python cl

Gustavo Bezerra 159 Dec 27, 2022
Async database support for Python. 🗄

Databases Databases gives you simple asyncio support for a range of databases. It allows you to make queries using the powerful SQLAlchemy Core expres

Encode 3.2k Dec 30, 2022
Python version of the TerminusDB client - for TerminusDB API and WOQLpy

TerminusDB Client Python Development status ⚙️ Python Package status 📦 Python version of the TerminusDB client - for TerminusDB API and WOQLpy Requir

TerminusDB 66 Dec 02, 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
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