{"id":22540429,"url":"https://github.com/sureshbeekhani/ai-quick-summaries","last_synced_at":"2026-05-01T15:37:41.012Z","repository":{"id":266308659,"uuid":"853237922","full_name":"SURESHBEEKHANI/AI-Quick-Summaries","owner":"SURESHBEEKHANI","description":"Developed an AI-powered web app using Streamlit and Google Gemini AI for generating concise summaries from PDFs, images, and text files. The app features real-time text summarization, file upload support, and a user-friendly interface.","archived":false,"fork":false,"pushed_at":"2025-02-04T14:31:14.000Z","size":388,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-28T07:21:54.679Z","etag":null,"topics":["chatbot","gemini","gpt","image-and-pdf","llm","llm-inference","python","streamlit"],"latest_commit_sha":null,"homepage":"https://ai-quick-summaries-tdto7cmtdbcshympvgbe7x.streamlit.app/","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/SURESHBEEKHANI.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-09-06T09:00:56.000Z","updated_at":"2025-02-04T14:31:18.000Z","dependencies_parsed_at":"2025-03-28T07:21:05.821Z","dependency_job_id":null,"html_url":"https://github.com/SURESHBEEKHANI/AI-Quick-Summaries","commit_stats":null,"previous_names":["sureshbeekhani/ai-quick-summaries"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/SURESHBEEKHANI/AI-Quick-Summaries","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SURESHBEEKHANI%2FAI-Quick-Summaries","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SURESHBEEKHANI%2FAI-Quick-Summaries/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SURESHBEEKHANI%2FAI-Quick-Summaries/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SURESHBEEKHANI%2FAI-Quick-Summaries/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SURESHBEEKHANI","download_url":"https://codeload.github.com/SURESHBEEKHANI/AI-Quick-Summaries/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SURESHBEEKHANI%2FAI-Quick-Summaries/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32503202,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-30T13:12:12.517Z","status":"online","status_checked_at":"2026-05-01T02:00:05.856Z","response_time":64,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["chatbot","gemini","gpt","image-and-pdf","llm","llm-inference","python","streamlit"],"created_at":"2024-12-07T12:10:54.191Z","updated_at":"2026-05-01T15:37:40.997Z","avatar_url":"https://github.com/SURESHBEEKHANI.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"## AI Quick Summaries\n\nAI Quick Summaries is a simple web application built using Streamlit that allows users to summarize different types of files and text using Google's Gemini Generative AI. The app supports files such as PDFs, images (JPEG, PNG), and text files.\n\n## Features\n\n- **File Summarization**: Upload PDF, JPEG, PNG, or TXT files for a concise AI-generated summary.\n- **Text Summarization**: Input text manually and get a brief summary using Google Generative AI.\n- **User-Friendly Interface**: A clean, simple interface powered by Streamlit.\n- **Supports Multiple File Types**: Handles PDFs, images (JPEG, PNG), and text files.\n\n## Prerequisites\n\nBefore running the app, make sure you have the following installed:\n\n- Python 3.7 or higher\n- The required Python libraries (Streamlit, Google Generative AI, dotenv, etc.)\n\n### Example `.env` File\n\nCreate a `.env` file in the project root with the following content, replacing `your_gemini_api_key_here` with your actual API key:\n\n```bash\nGEMINI_API_KEY=your_gemini_api_key_here\nInstallation and Setup\nStep 1: Clone the Repository\nClone the repository using the following command:\n\n\ngit clone https://github.com/sureshbeekhani/ai-quick-summaries.git\ncd ai-quick-summaries\nStep 2: Install Dependencies\nInstall the required Python packages using the requirements.txt file:\n\n\npip install -r requirements.txt\nStep 3: Set Up the Environment Variables\nCreate a .env file in the root directory of the project and add your Google Gemini API key as follows:\n\n\nGEMINI_API_KEY=your_gemini_api_key_here\nStep 4: Run the Application\nRun the Streamlit app with the following command:\n\n\nstreamlit run app.py\nThis will launch the app in your browser.\n\nHow to Use\nSelect Input Method: Choose between uploading a file or inputting text via the sidebar.\n\nUpload File: Upload a PDF, JPEG, PNG, or TXT file.\nInput Text: Input text directly for summarization.\nGet a Summary: Once the file is uploaded or text is entered, the app will generate a summary using Google's Gemini AI.\n\nView the Summary: The AI-generated summary or description will appear in the app's main display area.\n\nSupported File Types\nPDF: The app will summarize the main points of the document.\nJPEG, JPG, PNG: The app will describe the image.\nTXT: The app will provide a summary of the text content.\nProject Structure\n\n.\n├── app.py              # Main Streamlit app\n├── .env                # Environment variables for API keys\n├── README.md           # Project documentation\n├── requirements.txt    # Python dependencies\n└── imgs/               # Directory for storing image assets like the logo\nCode Overview\nHere’s a high-level overview of the main parts of the code:\n\nImport Libraries:\n\nstreamlit: For building the app interface.\ngoogle.generativeai: For interacting with the Gemini AI.\ndotenv: For loading environment variables.\nre: For sanitizing file names.\ntempfile, pathlib, os, base64: For file handling.\nSet Up Environment Variables:\n\nLoad the API key from the .env file using load_dotenv() and configure the Gemini API with genai.configure().\nFile Handling:\n\nThe app processes uploaded files and sanitizes their names.\nDepending on the file type, it generates appropriate prompts for the Gemini AI.\nImage to Base64 Conversion:\n\nConverts the logo image to Base64 for embedding in the sidebar.\nStreamlit UI:\n\nThe sidebar includes the logo and instructions.\nA radio button lets users choose between file uploads and text input.\nAI Content Generation:\n\nBased on the file type (PDF, image, or text), it prompts the AI to generate a summary or description.\nDependencies\nThe app relies on the following dependencies, which are listed in requirements.txt:\n\nStreamlit: For the web interface.\nGoogle Generative AI (Gemini): To generate summaries based on input.\npython-dotenv: For handling environment variables.\npathlib, tempfile, os, base64: For file processing and conversion.\nYou can install these dependencies using the following command:\n\n\npip install -r requirements.txt\nKnown Issues\nThe app currently supports only PDF, image, and text files. Other file formats may not work as expected.\nAPI limits may apply based on your usage tier for Google Generative AI.\nFuture Improvements\nMore File Types: Adding support for DOCX, PPTX, and other common file types.\nCustom Summarization Levels: Allow users to choose the level of detail in the summary.\nMultilingual Support: Expand the summarization capabilities to multiple languages.\nLicense\nThis project is licensed under the MIT License. See the LICENSE file for details.\n\nContact\nFor any issues or questions, feel free to reach out:\n\nGitHub: https://github.com/sureshbeekhani\n\n\nThis `README.md` file includes comprehensive installation instructions, usage details, and additiona\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsureshbeekhani%2Fai-quick-summaries","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsureshbeekhani%2Fai-quick-summaries","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsureshbeekhani%2Fai-quick-summaries/lists"}