{"id":20163829,"url":"https://github.com/systemlight/madtornado","last_synced_at":"2026-02-24T16:48:09.108Z","repository":{"id":57439099,"uuid":"180560262","full_name":"SystemLight/madtornado","owner":"SystemLight","description":":ocean:  Madtornado is a project templates for Tornado framework and quickly generate the Tornado project.【自动生成tornado项目模板 CLI脚手架(scaffolding)】","archived":false,"fork":false,"pushed_at":"2020-08-30T12:07:30.000Z","size":276,"stargazers_count":11,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-09T19:49:55.321Z","etag":null,"topics":["generator","madtornado","python35","scaffolding","template","tornado","tornado-framework"],"latest_commit_sha":null,"homepage":"https://madtornado.readthedocs.io","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SystemLight.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-04-10T10:41:05.000Z","updated_at":"2024-11-27T05:33:43.000Z","dependencies_parsed_at":"2022-09-26T17:11:35.920Z","dependency_job_id":null,"html_url":"https://github.com/SystemLight/madtornado","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SystemLight%2Fmadtornado","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SystemLight%2Fmadtornado/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SystemLight%2Fmadtornado/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SystemLight%2Fmadtornado/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SystemLight","download_url":"https://codeload.github.com/SystemLight/madtornado/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248137997,"owners_count":21053775,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["generator","madtornado","python35","scaffolding","template","tornado","tornado-framework"],"created_at":"2024-11-14T00:31:59.945Z","updated_at":"2026-02-24T16:48:09.074Z","avatar_url":"https://github.com/SystemLight.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# madtornado | [中文文档](./README.zh.md)\n\nPlease use [madtornado4](https://github.com/SystemLight/madtornado4) to experience Tornado development in MVC mode\n\n[![Downloads](https://pepy.tech/badge/madtornado)](https://pepy.tech/project/madtornado)\n[![version](https://img.shields.io/pypi/v/madtornado)](https://pypi.python.org/pypi/madtornado)\n[![codebeat badge](https://codebeat.co/badges/da82dbdb-eceb-4166-b9e9-2d290c5f608f)](https://codebeat.co/projects/github-com-systemlight-madtornado-master)\n[![Build Status](https://travis-ci.org/SystemLight/madtornado.svg?branch=master)](https://travis-ci.org/SystemLight/madtornado)\n[![Documentation Status](https://readthedocs.org/projects/madtornado/badge/?version=stable)](https://madtornado.readthedocs.io/zh/latest/?badge=latest)\n[![Gitter](https://badges.gitter.im/systemlight-madtornado/community.svg)](https://gitter.im/systemlight-madtornado/community?utm_source=badge\u0026utm_medium=badge\u0026utm_campaign=pr-badge)\n\nMadtornado is a project templates for Tornado framework and quickly generate the Tornado project.\nPyPI page: https://pypi.python.org/pypi/madtornado\n\n# Installation\n\n```\npip install madtornado\nsea --init_project [project path]\n```\n\n# The powerful madtornado\n## Easily check parameters with `Reg.check` module\n```\nargs = self.get_argument_for({\"a\": None, \"b\": None, \"c\": None})\ncheck_rule = {\n    \"a\": [check.not_null], \"b\": [check.not_null], \"c\": [check.not_null(\"c type is error\")]\n}\nresult = check.some(args, check_rule)\nprint(result.__dict__)\n```\n\n# Used madtornado\n\n## workspace\n\n```\n%madtornado_project%\\ancient\\view\\reception.py\n```\n\n## start server\n\n```\npython server.py\n```\n\n## Create route\n\n```\nfile : reception.py\n\n@register.route(use=register.PRT)\nclass IndexHandler(BaseHandler):\n    \"\"\"\n\n    url: http://127.0.0.1:8095/prt/index\n\n    \"\"\"\n\n    async def get(self):\n        self.write(\"\u003ch1 style='text-align:center'\u003eIndex\u003c/h1\u003e\")\n\n    async def post(self):\n        self.throw(404)\n\n    async def put(self):\n        self.throw(404)\n\n    async def delete(self):\n        self.throw(404)\n```\n\n## Quickly create route\n\n```\nsea --new_recp %madtornado_project%\\ancient\\view\\reception.py\n```\n\n# Configure anything\n\n```\n%madtornado_project%\\config\\tornado.cfg\n```\n\n# Advise\n\n\u003e *  Nginx ( IIS ) use port 80\n\u003e *  Tomcat use port 8080\n\u003e *  Apache2 use port 8088\n\u003e *  madtornado use port 8095\n\n# Resources\n\nYou can read [madtornado Documentation](https://madtornado.readthedocs.io/) online for more information.\n\n# License\n\nmadtornado uses the MIT license, see LICENSE file for the details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsystemlight%2Fmadtornado","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsystemlight%2Fmadtornado","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsystemlight%2Fmadtornado/lists"}