{"id":19725016,"url":"https://github.com/seanpianka/flask-lambda2","last_synced_at":"2026-04-17T08:03:02.483Z","repository":{"id":57430443,"uuid":"101075777","full_name":"seanpianka/Flask-Lambda2","owner":"seanpianka","description":"Interface for Flask to AWS Lambda for creating REST APIs","archived":false,"fork":false,"pushed_at":"2018-10-18T20:42:37.000Z","size":18,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-24T06:52:01.368Z","etag":null,"topics":["api","aws","flask","lambda","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":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/seanpianka.png","metadata":{"files":{"readme":"README.rst","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":"2017-08-22T15:05:41.000Z","updated_at":"2020-12-21T22:11:50.000Z","dependencies_parsed_at":"2022-08-26T05:02:00.138Z","dependency_job_id":null,"html_url":"https://github.com/seanpianka/Flask-Lambda2","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/seanpianka%2FFlask-Lambda2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seanpianka%2FFlask-Lambda2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seanpianka%2FFlask-Lambda2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seanpianka%2FFlask-Lambda2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/seanpianka","download_url":"https://codeload.github.com/seanpianka/Flask-Lambda2/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241045802,"owners_count":19899728,"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","aws","flask","lambda","python","rest","restful"],"created_at":"2024-11-11T23:27:52.191Z","updated_at":"2025-10-14T09:04:23.059Z","avatar_url":"https://github.com/seanpianka.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"Flask-Lambda2\n=============\n\nFlask-Lambda2 is a python package to add a compatibility layer between a\nFlask application and AWS Lambda for creating RESTful applications.\n\n.. image:: https://pepy.tech/badge/flask-lambda2\n\nThis package is `opinionated \u003chttps://stackoverflow.com/questions/802050/what-is-opinionated-software\u003e`_, in that \"it locks or guides you into [our] way of doing things\" or \"doesn't make it easy to diverse from [our] golden path.\"\n\nInstallation\n============\n\n.. code:: bash\n\n    $ pip install flask-lambda2 \n\nRequirements\n------------\n\nThe main assumption here is that your project can comfortably and reasonably fit into a single endpoint, or you separate your Lambda functions to group certain, related API endpoints together.\n\nFirstly, ensure your Lambda `handler` is set to `project_api.app`, where `project_api` is the filename (excluding the `.py` extension) containing your project's API endpoint implementations and where `app` is the Flask instance (actually a `FlaskLambda` instance) with which you have added the URL rules onto.\n\nLastly, ensure that invokation convention from the location you plan to invoke the endpoints from roughly follows the calling convention shown below:\n\n.. code:: python\n\n    import boto3\n\n\n    client = boto3.client('lambda')\n    client.invoke(FunctionName='project_api',\n                  InvocationType='RequestResponse',\n                  Payload=json.dumps({'route':'/users/',\n                                      'method':'get',\n                                      'token':'123abc'}))\n\n\nThat's it!\n\n\nTests\n-----\n\nTests are available in ``Flask-Lambda2/tests`` through invoking\n``test.py`` with ``python test.py``. Ensure all dependencies are\ninstalled through invoking ``pip install -r requirements.txt``.\n\nFunctional Examples\n-------------------\n\nGridLight-API\n~~~~~~~~~~~~~\n\nI have created a backend for a mobile application using this library,\nit's source code is available `here at the GridLight-API\nrepository \u003chttps://github.com/seanpianka/GridLight-API\u003e`__.\n\nIf you have any questions, feel free to e-mail me at pianka@eml.cc.\n\n\nBuilt With\n----------\n\n-  `Flask \u003chttps://github.com/pallets/flask\u003e`__ - Micro web-framework\n   based on Werkzeug and Jinja2\n\n\nLicense\n-------\n\nThis project is licensed under the Apache 2.0 License - see the\nLICENSE.md file for details\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fseanpianka%2Fflask-lambda2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fseanpianka%2Fflask-lambda2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fseanpianka%2Fflask-lambda2/lists"}