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)
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
Simple DDL Parser to parse SQL (HQL, TSQL, AWS Redshift, Snowflake and other dialects) ddl files to json/python dict with full information about columns: types, defaults, primary keys, etc.

Simple DDL Parser Build with ply (lex & yacc in python). A lot of samples in 'tests/. Is it Stable? Yes, library already has about 5000+ usage per day

Iuliia Volkova 95 Jan 05, 2023
Generate database table diagram from SQL data definition.

sql2diagram Generate database table diagram from SQL data definition. e.g. "CREATE TABLE ..." See Example below How does it works? Analyze the SQL to

django-cas-ng 1 Feb 08, 2022
PubMed Mapper: A Python library that map PubMed XML to Python object

pubmed-mapper: A Python Library that map PubMed XML to Python object 中文文档 1. Philosophy view UML Programmatically access PubMed article is a common ta

灵魂工具人 33 Dec 08, 2022
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
Pysolr — Python Solr client

pysolr pysolr is a lightweight Python client for Apache Solr. It provides an interface that queries the server and returns results based on the query.

Haystack Search 626 Dec 01, 2022
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
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
Redis client for Python asyncio (PEP 3156)

Redis client for Python asyncio. Redis client for the PEP 3156 Python event loop. This Redis library is a completely asynchronous, non-blocking client

Jonathan Slenders 554 Dec 04, 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
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
Python MYSQL CheatSheet.

Python MYSQL CheatSheet Python mysql cheatsheet. Install Required Windows(WAMP) Download and Install from HERE Linux(LAMP) install packages. sudo apt

Mohammad Dori 4 Jul 15, 2022
Python Wrapper For sqlite3 and aiosqlite

Python Wrapper For sqlite3 and aiosqlite

6 May 30, 2022
python-bigquery Apache-2python-bigquery (🥈34 · ⭐ 3.5K · 📈) - Google BigQuery API client library. Apache-2

Python Client for Google BigQuery Querying massive datasets can be time consuming and expensive without the right hardware and infrastructure. Google

Google APIs 550 Jan 01, 2023
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
Dinamopy is a python helper library for dynamodb

Dinamopy is a python helper library for dynamodb. You can define your access patterns in a json file and can use dynamic method names to make operations.

Rasim Andıran 2 Jul 18, 2022
Amazon S3 Transfer Manager for Python

s3transfer - An Amazon S3 Transfer Manager for Python S3transfer is a Python library for managing Amazon S3 transfers. Note This project is not curren

the boto project 158 Jan 07, 2023
sync/async MongoDB ODM, yes.

μMongo: sync/async ODM μMongo is a Python MongoDB ODM. It inception comes from two needs: the lack of async ODM and the difficulty to do document (un)

Scille 428 Dec 29, 2022
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
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