Skip to content

Conversation

@ved015
Copy link

@ved015 ved015 commented Dec 22, 2025

Closes #1076

Summary

This PR adds a JavaScript/TypeScript quickstart for PDF processing using the Gemini API, bringing feature parity with the existing Python example (PDF_Files.py).

Motivation

JS/TS users currently lack an official reference for handling PDFs with Gemini, despite this being a common use case. This PR reduces friction and aligns the JS/TS cookbook with Python quickstarts.

What’s Included

  • JavaScript/TypeScript implementation of PDF processing
  • Structure and conventions aligned with existing JS/TS cookbook
  • Documentation updates for discoverability

collaborated with @ishaanxgupta

@github-actions github-actions bot added status:awaiting review PR awaiting review from a maintainer component:quickstarts Issues/PR referencing quickstarts folder labels Dec 22, 2025
@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello @ved015, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request primarily focuses on enhancing the Get_started_LiveAPI.py quickstart by introducing significant refactoring to its audio and video processing capabilities, making it more robust and efficient. It also includes the addition of a VS Code settings file for Python environment management. There is a discrepancy between the PR title/description, which mentions adding a JavaScript/TypeScript PDF processing quickstart, and the actual file changes provided, which are for a Python live API quickstart and VS Code settings. The summary above reflects the changes observed in the provided patches.

Highlights

  • VS Code Configuration Added: A new .vscode/settings.json file has been added to configure Python environment management using conda.
  • Live API Quickstart Refactoring: The quickstarts/Get_started_LiveAPI.py file has undergone significant refactoring to improve its audio and video processing capabilities, making it more robust and efficient.
  • Enhanced Gemini Client Configuration: The genai.Client initialization now explicitly retrieves the API key from environment variables, and the LiveConnectConfig includes detailed speech configuration (using the 'Zephyr' voice) and context window compression settings.
  • Improved Real-time Audio/Video Handling: Audio streaming now prevents queue overflow by managing queue size dynamically, and all audio/video capture methods include robust asyncio.CancelledError handling for better task management and resource cleanup.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request has a misleading title and description. It claims to add a JavaScript/TypeScript PDF processing quickstart, but the actual changes involve refactoring and improving a Python script for the Gemini Live API. Please update the PR title and description to reflect the actual changes.

The refactoring of Get_started_LiveAPI.py is a good improvement overall. The code is now better structured, with improved error handling, and efficiency. However, there are a few issues to address, including a user-specific settings file that should be removed, an inconsistency in the API key environment variable name, and some styling violations regarding whitespace. My detailed comments are below.

@ved015 ved015 force-pushed the js-ts-pdf-quickstart branch from 1677140 to ddca890 Compare December 22, 2025 18:01
@ishaanxgupta
Copy link
Contributor

@Giom-V @markmcd awaiting your review on this PR

@ved015
Copy link
Author

ved015 commented Jan 15, 2026

@patrickloeber @linhkid awaiting your review on this

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Submit the change with the approval.

Copy link
Collaborator

@Giom-V Giom-V left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ved015 Sorry for taking so long to review. The Js file seems fine and ready to be merged, but can you revert your changes on the live python script?

@ved015
Copy link
Author

ved015 commented Jan 21, 2026

Hi @Giom-V thank you for reviewing i have made the changes pls check

@ved015 ved015 force-pushed the js-ts-pdf-quickstart branch from 0008c0f to da39f87 Compare January 21, 2026 16:47
@ved015 ved015 requested a review from Giom-V January 21, 2026 16:48
@ved015
Copy link
Author

ved015 commented Jan 23, 2026

hi @Giom-V can we merge this now

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

component:quickstarts Issues/PR referencing quickstarts folder status:awaiting review PR awaiting review from a maintainer

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add JavaScript/TypeScript quickstart for PDF processing (parity with PDF_Files.py)

4 participants