├── .gitignore ├── .gitlab-ci.yml ├── .travis.yml ├── LICENSE ├── MANIFEST.in ├── Makefile ├── README.md ├── chili.png ├── horn ├── __init__.py ├── cli │ ├── __init__.py │ ├── api.py │ ├── model.py │ ├── new.py │ ├── repo.py │ └── schema.py ├── path.py ├── templates │ ├── gen │ │ ├── tests │ │ │ └── views │ │ │ │ └── test_{{ singular }}.py.jinja │ │ └── {{ app }} │ │ │ ├── models │ │ │ └── {{ singular }}.py.jinja │ │ │ ├── schemas │ │ │ └── {{ singular }}.py.jinja │ │ │ └── views │ │ │ └── {{ singular }}.py.jinja │ └── new │ │ ├── .gitignore.jinja │ │ ├── MANIFEST.in │ │ ├── README.md.jinja │ │ ├── instance │ │ └── prod.secret.cfg.jinja │ │ ├── log │ │ └── .gitkeep │ │ ├── logging.ini.jinja │ │ ├── pyproject.toml.jinja │ │ ├── setup.cfg │ │ ├── setup.py.jinja │ │ ├── tests │ │ ├── __init__.py │ │ ├── conftest.py.jinja │ │ ├── factories.py.jinja │ │ ├── test_swagger.py │ │ └── views │ │ │ ├── __init__.py │ │ │ ├── test_home.py │ │ │ ├── test_session.py │ │ │ └── test_user.py │ │ └── {{ app }} │ │ ├── __init__.py │ │ ├── cmds.py │ │ ├── config │ │ ├── __init__.py │ │ ├── default.py.jinja │ │ ├── development.py.jinja │ │ ├── production.py │ │ └── testing.py.jinja │ │ ├── core │ │ ├── __init__.py.jinja │ │ ├── database.py.jinja │ │ ├── errors.py.jinja │ │ └── schema.py.jinja │ │ ├── exts.py.jinja │ │ ├── helpers.py.jinja │ │ ├── models │ │ ├── __init__.py.jinja │ │ ├── helpers.py.jinja │ │ └── user.py.jinja │ │ ├── router.py.jinja │ │ ├── run.py.jinja │ │ ├── schemas │ │ ├── __init__.py.jinja │ │ ├── helpers.py.jinja │ │ └── user.py.jinja │ │ ├── swagger.py.jinja │ │ └── views │ │ ├── __init__.py.jinja │ │ ├── home.py.jinja │ │ ├── session.py.jinja │ │ └── user.py.jinja └── tpl.py ├── poetry.lock ├── pyproject.toml ├── setup.cfg └── tests ├── __init__.py ├── conftest.py ├── fixture.json ├── test_gen_api.py ├── test_gen_model.py ├── test_gen_schema.py └── test_new.py /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/.gitignore -------------------------------------------------------------------------------- /.gitlab-ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/.gitlab-ci.yml -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/.travis.yml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/LICENSE -------------------------------------------------------------------------------- /MANIFEST.in: -------------------------------------------------------------------------------- 1 | include LICENSE 2 | graft horn/templates 3 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/README.md -------------------------------------------------------------------------------- /chili.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/chili.png -------------------------------------------------------------------------------- /horn/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/__init__.py -------------------------------------------------------------------------------- /horn/cli/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/cli/__init__.py -------------------------------------------------------------------------------- /horn/cli/api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/cli/api.py -------------------------------------------------------------------------------- /horn/cli/model.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/cli/model.py -------------------------------------------------------------------------------- /horn/cli/new.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/cli/new.py -------------------------------------------------------------------------------- /horn/cli/repo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/cli/repo.py -------------------------------------------------------------------------------- /horn/cli/schema.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/cli/schema.py -------------------------------------------------------------------------------- /horn/path.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/path.py -------------------------------------------------------------------------------- /horn/templates/gen/tests/views/test_{{ singular }}.py.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/gen/tests/views/test_{{ singular }}.py.jinja -------------------------------------------------------------------------------- /horn/templates/gen/{{ app }}/models/{{ singular }}.py.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/gen/{{ app }}/models/{{ singular }}.py.jinja -------------------------------------------------------------------------------- /horn/templates/gen/{{ app }}/schemas/{{ singular }}.py.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/gen/{{ app }}/schemas/{{ singular }}.py.jinja -------------------------------------------------------------------------------- /horn/templates/gen/{{ app }}/views/{{ singular }}.py.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/gen/{{ app }}/views/{{ singular }}.py.jinja -------------------------------------------------------------------------------- /horn/templates/new/.gitignore.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/.gitignore.jinja -------------------------------------------------------------------------------- /horn/templates/new/MANIFEST.in: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/MANIFEST.in -------------------------------------------------------------------------------- /horn/templates/new/README.md.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/README.md.jinja -------------------------------------------------------------------------------- /horn/templates/new/instance/prod.secret.cfg.jinja: -------------------------------------------------------------------------------- 1 | SECRET_KEY = '{{ prod_secret_key }}' 2 | 3 | -------------------------------------------------------------------------------- /horn/templates/new/log/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /horn/templates/new/logging.ini.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/logging.ini.jinja -------------------------------------------------------------------------------- /horn/templates/new/pyproject.toml.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/pyproject.toml.jinja -------------------------------------------------------------------------------- /horn/templates/new/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/setup.cfg -------------------------------------------------------------------------------- /horn/templates/new/setup.py.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/setup.py.jinja -------------------------------------------------------------------------------- /horn/templates/new/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /horn/templates/new/tests/conftest.py.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/tests/conftest.py.jinja -------------------------------------------------------------------------------- /horn/templates/new/tests/factories.py.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/tests/factories.py.jinja -------------------------------------------------------------------------------- /horn/templates/new/tests/test_swagger.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/tests/test_swagger.py -------------------------------------------------------------------------------- /horn/templates/new/tests/views/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /horn/templates/new/tests/views/test_home.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/tests/views/test_home.py -------------------------------------------------------------------------------- /horn/templates/new/tests/views/test_session.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/tests/views/test_session.py -------------------------------------------------------------------------------- /horn/templates/new/tests/views/test_user.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/tests/views/test_user.py -------------------------------------------------------------------------------- /horn/templates/new/{{ app }}/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/{{ app }}/__init__.py -------------------------------------------------------------------------------- /horn/templates/new/{{ app }}/cmds.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/{{ app }}/cmds.py -------------------------------------------------------------------------------- /horn/templates/new/{{ app }}/config/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /horn/templates/new/{{ app }}/config/default.py.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/{{ app }}/config/default.py.jinja -------------------------------------------------------------------------------- /horn/templates/new/{{ app }}/config/development.py.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/{{ app }}/config/development.py.jinja -------------------------------------------------------------------------------- /horn/templates/new/{{ app }}/config/production.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/{{ app }}/config/production.py -------------------------------------------------------------------------------- /horn/templates/new/{{ app }}/config/testing.py.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/{{ app }}/config/testing.py.jinja -------------------------------------------------------------------------------- /horn/templates/new/{{ app }}/core/__init__.py.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/{{ app }}/core/__init__.py.jinja -------------------------------------------------------------------------------- /horn/templates/new/{{ app }}/core/database.py.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/{{ app }}/core/database.py.jinja -------------------------------------------------------------------------------- /horn/templates/new/{{ app }}/core/errors.py.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/{{ app }}/core/errors.py.jinja -------------------------------------------------------------------------------- /horn/templates/new/{{ app }}/core/schema.py.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/{{ app }}/core/schema.py.jinja -------------------------------------------------------------------------------- /horn/templates/new/{{ app }}/exts.py.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/{{ app }}/exts.py.jinja -------------------------------------------------------------------------------- /horn/templates/new/{{ app }}/helpers.py.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/{{ app }}/helpers.py.jinja -------------------------------------------------------------------------------- /horn/templates/new/{{ app }}/models/__init__.py.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/{{ app }}/models/__init__.py.jinja -------------------------------------------------------------------------------- /horn/templates/new/{{ app }}/models/helpers.py.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/{{ app }}/models/helpers.py.jinja -------------------------------------------------------------------------------- /horn/templates/new/{{ app }}/models/user.py.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/{{ app }}/models/user.py.jinja -------------------------------------------------------------------------------- /horn/templates/new/{{ app }}/router.py.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/{{ app }}/router.py.jinja -------------------------------------------------------------------------------- /horn/templates/new/{{ app }}/run.py.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/{{ app }}/run.py.jinja -------------------------------------------------------------------------------- /horn/templates/new/{{ app }}/schemas/__init__.py.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/{{ app }}/schemas/__init__.py.jinja -------------------------------------------------------------------------------- /horn/templates/new/{{ app }}/schemas/helpers.py.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/{{ app }}/schemas/helpers.py.jinja -------------------------------------------------------------------------------- /horn/templates/new/{{ app }}/schemas/user.py.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/{{ app }}/schemas/user.py.jinja -------------------------------------------------------------------------------- /horn/templates/new/{{ app }}/swagger.py.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/{{ app }}/swagger.py.jinja -------------------------------------------------------------------------------- /horn/templates/new/{{ app }}/views/__init__.py.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/{{ app }}/views/__init__.py.jinja -------------------------------------------------------------------------------- /horn/templates/new/{{ app }}/views/home.py.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/{{ app }}/views/home.py.jinja -------------------------------------------------------------------------------- /horn/templates/new/{{ app }}/views/session.py.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/{{ app }}/views/session.py.jinja -------------------------------------------------------------------------------- /horn/templates/new/{{ app }}/views/user.py.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/templates/new/{{ app }}/views/user.py.jinja -------------------------------------------------------------------------------- /horn/tpl.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/horn/tpl.py -------------------------------------------------------------------------------- /poetry.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/poetry.lock -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/pyproject.toml -------------------------------------------------------------------------------- /setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/setup.cfg -------------------------------------------------------------------------------- /tests/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/tests/__init__.py -------------------------------------------------------------------------------- /tests/conftest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/tests/conftest.py -------------------------------------------------------------------------------- /tests/fixture.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/tests/fixture.json -------------------------------------------------------------------------------- /tests/test_gen_api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/tests/test_gen_api.py -------------------------------------------------------------------------------- /tests/test_gen_model.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/tests/test_gen_model.py -------------------------------------------------------------------------------- /tests/test_gen_schema.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/tests/test_gen_schema.py -------------------------------------------------------------------------------- /tests/test_new.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bigfang/horn-py/HEAD/tests/test_new.py --------------------------------------------------------------------------------