{"id":19553728,"url":"https://github.com/michaljach/python-flask-mongoengine-docker-starter","last_synced_at":"2025-06-21T22:37:06.721Z","repository":{"id":47113559,"uuid":"255289070","full_name":"michaljach/python-flask-mongoengine-docker-starter","owner":"michaljach","description":"Starter for RESTful API with Python, Flask, MongoDB and Docker","archived":false,"fork":false,"pushed_at":"2023-02-15T23:43:38.000Z","size":10,"stargazers_count":0,"open_issues_count":2,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-11-11T04:29:39.522Z","etag":null,"topics":["api","boilerplate","docker","docker-compose","flask","flask-restful","flask-restplus","mongoengine","python","rest","restful"],"latest_commit_sha":null,"homepage":"","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/michaljach.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-04-13T09:54:55.000Z","updated_at":"2022-12-21T12:03:07.000Z","dependencies_parsed_at":"2024-11-11T04:27:41.459Z","dependency_job_id":"342e8aa3-a3dd-4597-a1a1-bf576641267d","html_url":"https://github.com/michaljach/python-flask-mongoengine-docker-starter","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/michaljach%2Fpython-flask-mongoengine-docker-starter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/michaljach%2Fpython-flask-mongoengine-docker-starter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/michaljach%2Fpython-flask-mongoengine-docker-starter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/michaljach%2Fpython-flask-mongoengine-docker-starter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/michaljach","download_url":"https://codeload.github.com/michaljach/python-flask-mongoengine-docker-starter/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":233098529,"owners_count":18624767,"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":["api","boilerplate","docker","docker-compose","flask","flask-restful","flask-restplus","mongoengine","python","rest","restful"],"created_at":"2024-11-11T04:24:30.053Z","updated_at":"2025-01-08T20:44:22.796Z","avatar_url":"https://github.com/michaljach.png","language":"Python","readme":"# python-flask-mongoengine-docker-starter\n\n[![Language](https://img.shields.io/badge/language-python3-brightgreen)](https://www.python.org/)\n[![License](https://img.shields.io/github/license/michaljach/python-flask-mongoengine-docker-starter)](https://opensource.org/licenses/MIT)\n[![Repo size](https://img.shields.io/github/repo-size/michaljach/python-flask-mongoengine-docker-starter)](https://github.com/michaljach/python-flask-mongoengine-docker-starter)\n\nThis is a starter or boilerplate to create RESTful API with Python and MongoDB using Flask microframework. The project uses Docker (docker-compose) for easy to use, encapsulated and safe environment.\n\n## Stack\n\n- Python 3\n- Flask\n- Flask-RESTPlus\n- Mongoengine\n- Unittest\n- Docker\n- Swagger\n\n## Usage\n\n[Install Docker](https://www.docker.com/products/docker-desktop) if you don't have it yet and run the container:\n\n```sh\n$ docker-compose up\n```\n\nIt will run both Web and Mongodb containers in Development environment on `localhost:5100`.\nFor other environments change ENV in `docker-compose.yml`:\n\n```sh\nweb:\n   ...\n    environment:\n      - ENV=Testing\n```\n\nYou can use Development, Production or Testing or add your own environment in `api/config.py`.\n\n## Structure\n\nHere is a folder and file structure with explanation.\n\n```\n├── Dockerfile\n├── LICENSE\n├── README.md\n├── api\n│   ├── app.py - Entry point of application\n│   ├── config.py - Configuration with environments\n│   └── v1 - API version 1\n│       ├── database\n│       │   └── models.py - All data models app uses\n│       └── resources\n│           ├── routes.py - List of namespaces for routing\n│           └── todos.py - Example Todo resource\n├── docker-compose.yml\n├── requirements.txt - Dependencies\n└── tests\n    └── text_base.py - Example test file\n```\n\n## Documentation\n\nThanks to handy decorators this boilerplate will generate Swagger with documentation on the fly.\nBy default Swagger runs on `/` so you should see it on `http://localhost:5100`. Read more [here](https://flask-restplus.readthedocs.io/en/stable/swagger.html).\n\n![Swagger](https://i.imgur.com/G7EbHK4.png)\n\n## Testing\n\nYou can run tests easily within Docker container:\n\n```\ndocker-compose run web python tests/test_base.py\n```\n\n## License\n\nSee LICENSE file.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmichaljach%2Fpython-flask-mongoengine-docker-starter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmichaljach%2Fpython-flask-mongoengine-docker-starter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmichaljach%2Fpython-flask-mongoengine-docker-starter/lists"}