{"id":16278555,"url":"https://github.com/dezoito/flask_summarizer","last_synced_at":"2026-04-09T08:39:59.139Z","repository":{"id":22930913,"uuid":"26280049","full_name":"dezoito/flask_Summarizer","owner":"dezoito","description":"A Dockerized Flask based API to summarize documents and articles (Visual Interface and tests included).","archived":false,"fork":false,"pushed_at":"2019-01-28T21:20:55.000Z","size":376,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-14T13:50:35.384Z","etag":null,"topics":["article","docker","flask","nltk","phantomjs","python","selenium","textrank"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dezoito.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-11-06T16:56:58.000Z","updated_at":"2024-03-14T02:55:23.000Z","dependencies_parsed_at":"2022-08-21T16:50:30.101Z","dependency_job_id":null,"html_url":"https://github.com/dezoito/flask_Summarizer","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dezoito%2Fflask_Summarizer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dezoito%2Fflask_Summarizer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dezoito%2Fflask_Summarizer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dezoito%2Fflask_Summarizer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dezoito","download_url":"https://codeload.github.com/dezoito/flask_Summarizer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247893398,"owners_count":21013886,"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":["article","docker","flask","nltk","phantomjs","python","selenium","textrank"],"created_at":"2024-10-10T18:58:56.830Z","updated_at":"2026-04-09T08:39:59.097Z","avatar_url":"https://github.com/dezoito.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"flask_Summarizer\n---------------------------------------------------\n\nA very simple Flask based API to create a summary from documents and articles.\n\n### Updates\n\n[Jan-2019] Improvements to the API, including auto-generated swagger documentation,\ncourtesy of [Flask RestPlus](https://github.com/noirbizarre/flask-restplus):\n\n![](./screenshot.jpg?raw=true)\n\nNavigating to the root URL let's you see the automatically generated documentation for all endpoints and test them on the fly.\n\nYou can also go to `\u003croot URL\u003e/form` to test the API using an HTML client form.\n\n\n### Dockerizing this app\n\nYou can use Docker to run the application in development or in production mode (assuming you have Docker and Docker Compose installed).\n\n#### Development Mode\nTo build the app run in development mode just cd to the project root and run:\n\n```sh\n    ./rundev.sh\n```\n\nIf everything runs smoothly, you will be able to open the app from [http://localhost:5000](http://localhost:5000).\n\nThis will run the app using Flask's built-in server on port 5000 and install testing dependencies (such as PhantomJS).\n\n#### Production Mode\nTo build the app run it in production, cd to the project root and run:\n\n```sh\n    ./runprod.sh\n```\n\nThis will install gunicorn, nginx and serv it on port 80\n\nNote: If you want to run it on a virtualenv, you'll have to manually setup NLTK and\ninstall PhantomJS (see [`sh_scripts/install.sh`](https://github.com/dezoito/flask_Summarizer/blob/master/sh_scripts/install_phantom_js.sh) to see how it's done in Ubuntu).\n\n### Running Tests\nThe functional tests still use PhantomJS's headless browser (I left them because some people might still find this useful).\n\nFrom the `tests/` directory, run:\n```sh\n    python3 -m unittest discover\n```\n\nYou can also run individual test suites:\n```sh\n    python3 -m unittest tests_unit\n    python3 -m unittest tests_views\n    python3 -m unittest tests_api\n    python3 -m unittest tests_phantomJS\n```\n\n\n### References:\nFlask Summarizer is based on the following projects:\n\n**Summarize.py:**\nhttps://github.com/Rotten194/summarize.py\n\n**Python implementation of TextRank:**\nhttp://www.davidadamojr.com/textrank-implementation-in-python-github-repo/\n\nThe Textrank algorithm seems to deliver a better summary, but was taking too\nlong to run, so I just use a customized version of summary.py (I'm using Brazilian Portuguese Stopwords and Tokenizer).\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdezoito%2Fflask_summarizer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdezoito%2Fflask_summarizer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdezoito%2Fflask_summarizer/lists"}