Skip to content

feat(ppt): Implement CLI support for PPT Gen - #808

Merged
murdore merged 1 commit into
juspay:releasefrom
Tafheem-Ahemad-Juspay:release
Mar 14, 2026
Merged

murdore merged 1 commit into
juspay:releasefrom
Tafheem-Ahemad-Juspay:release

Conversation

@Tafheem-Ahemad-Juspay

@Tafheem-Ahemad-Juspay Tafheem-Ahemad-Juspay commented Feb 5, 2026 •

Copy link
Copy Markdown
Contributor

Pull Request

Description

What does this PR do?

Implements Step 5 of the PPT feature enhancement - CLI Interface for PowerPoint generation. This enables users to generate presentations directly from the command line.

Related Issues

Does this PR close any issues?

Fixes #(issue number)
Closes #(issue number)
Relates to #(issue number)

Type of Change

Please select the type of change:

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation update
  • Refactoring (no functional changes)
  • Performance improvement
  • Test coverage improvement
  • Build/CI configuration
  • Other (please describe):

Motivation and Context

Why is this change needed? What problem does it solve?

Provide context for reviewers:

  • Background information
  • Use case or scenario
  • Links to relevant discussions or documentation
  • Screenshots/GIFs (if UI-related)

Changes Made

What specific changes were made?

Provide a bullet-point list of the key changes:

  • Added X functionality to Y component
  • Modified Z behavior to handle edge case A
  • Updated documentation in file B
  • Refactored C for better performance

Breaking Changes

Does this PR introduce breaking changes?

  • No breaking changes
  • Yes, breaking changes (describe below)

If yes, describe:

  • What breaks?
  • Migration path for users
  • Deprecation warnings added?

Testing

How has this been tested?

Please describe the tests you ran and their results:

  • Unit tests added/updated
  • Integration tests added/updated
  • E2E tests pass
  • Manual testing completed
  • Tested with multiple providers: [list providers]
  • Tested on multiple platforms: [list platforms]

Test Coverage

  • All new code is covered by tests
  • Existing tests pass
  • Coverage percentage maintained or improved

Manual Testing Steps

Provide steps for manual testing:

  1. Set up environment with [...]
  2. Run command [...]
  3. Verify that [...]
  4. Check that [...]

Code Quality

Have you followed code quality standards?

  • Code follows the project's style guidelines (ESLint passes)
  • Code is properly formatted (Prettier applied)
  • Self-review of code completed
  • No console.log statements (using logger instead)
  • No hardcoded API keys or secrets
  • TypeScript strict mode compliance
  • Proper error handling implemented
  • TODO/FIXME comments reference issues

Documentation

Have you updated documentation?

  • JSDoc comments added/updated for public APIs
  • README.md updated (if needed)
  • Documentation in /docs updated (if needed)
  • Code examples added/updated (if needed)
  • CHANGELOG.md updated (if applicable)
  • Migration guide provided (if breaking changes)

Commit Message Format

Does your commit follow semantic commit conventions?

  • Commit message follows format: type(scope): description
  • Valid type used: feat, fix, docs, style, refactor, test, chore, build, ci, perf, revert
  • Scope specified (e.g., providers, cli, docs, middleware)

Example: feat(providers): add support for LiteLLM proxy

Dependencies

Does this PR add, update, or remove dependencies?

  • No dependency changes
  • Dependencies added (list below)
  • Dependencies updated (list below)
  • Dependencies removed (list below)

If yes, list dependencies and justification:

package-name@version - Reason for adding/updating

Performance Impact

Does this change affect performance?

  • No performance impact
  • Performance improved (provide metrics)
  • Performance degraded (justify why acceptable)

If applicable, provide benchmark results:

Before: X ms
After: Y ms
Improvement: Z%

Security Considerations

Are there any security implications?

  • No security implications
  • Security review needed
  • Security vulnerability fixed

If applicable, describe:

  • Security measures implemented
  • Potential risks mitigated
  • Compliance considerations (HIPAA, SOC2, GDPR)

Deployment Notes

Special deployment instructions?

  • No special deployment steps
  • Requires environment variable changes (list below)
  • Requires database migration
  • Requires Redis schema update
  • Other (describe below)

Screenshots / Videos

If applicable, add screenshots or videos to demonstrate changes:

[Add screenshots or videos here]

Reviewer Checklist

For reviewers:

  • Code follows project style and conventions
  • Changes are well-documented
  • Tests provide adequate coverage
  • No obvious performance issues
  • No security vulnerabilities introduced
  • Breaking changes are properly documented
  • Documentation is clear and accurate

Additional Notes

Any additional information for reviewers:

[Add any extra context, concerns, or questions here]


Pre-submission Checklist

Before submitting, ensure you have:

  • Read and followed the Contributing Guidelines
  • Verified all automated pre-commit checks pass
  • Tested changes locally with pnpm test
  • Built the project successfully with pnpm build
  • Run pnpm run validate:all and all checks pass
  • Reviewed your own code for obvious issues
  • Ensured commit messages follow semantic format
  • Updated relevant documentation
  • Added tests for new functionality
  • Checked that CI/CD pipeline passes (after creating PR)

Thank you for contributing to NeuroLink!

Summary by CodeRabbit

  • New Features

    • Added PPT generation mode to the CLI with options for pages, theme, audience, tone, aspect ratio, image toggle, and output path; --outputMode now supports "ppt" and returns a PPT file path and slide count.
    • Unified generation flow now shows PPT progress and consolidated success messaging alongside text/video.
  • Documentation

    • Comprehensive PPT guides, CLI reference, examples, troubleshooting, and redirects added.
  • Tests

    • New unit tests covering PPT CLI flags and extensive PPT generation scenarios.

@coderabbitai

coderabbitai Bot commented Feb 5, 2026 •

Copy link
Copy Markdown

Important

Review skipped

Auto incremental reviews are disabled on this repository.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 5ff24ce9-f742-44cb-9c0a-d65df38160b7

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Walkthrough

Adds PowerPoint (PPT) generation as a first-class CLI output mode: new PPT flags and options, type declarations for PPT inputs/results, CLI wiring in the command factory to build PPT output config and handle results, new PPT feature docs, redirects, and extensive unit tests for PPT flags and generation utilities.

Changes

Cohort / File(s) Summary
CLI Command Factory
src/cli/factories/commandFactory.ts
Adds ppt to outputMode, introduces PPT flags/aliases (pptPages/pages, pptTheme, pptAudience, pptTone, pptOutput/po, pptAspectRatio, pptNoImages), maps argv to internal options, and integrates PPT-specific configure/handle hooks and success/output formatting.
Type Definitions
src/lib/types/cli.ts, src/lib/types/generateTypes.ts
Extends outputMode to include "ppt", adds PPT-specific command args (pptPages, pptTheme, pptAudience, pptTone, pptOutput, pptAspectRatio, pptNoImages) and adds ppt to GenerateResult (PPTGenerationResult). Updates example logging to use totalSlides and filePath.
PPT Feature Public Surface
src/lib/features/ppt/index.ts, src/lib/features/ppt/...
Exports added/expanded (e.g., validateImageBuffer, generateOutputPath, normalizeLogoConfig, layout/util helpers, new constants/types) — increases public API surface for PPT utilities.
Tests
test/unit/cli/ppt-flags.test.ts, test/unit/ppt-generation.test.ts
Adds unit tests validating CLI PPT flags, defaults, validation constraints, and broad PPT generation/unit tests for slide types, utils, rendering, aspect ratios, and public API exports.
Docs — Guides & Reference
README.md, docs/*, docs-site/*
Adds comprehensive PPT feature docs (docs/features/ppt-generation.md), updates CLI guides/reference/examples, adds redirects and sidebar entries, inserts troubleshooting/error sections, configuration notes, tutorials, and cross-links. Some docs contain duplicated insertions noted in the diff.
Docs Config / Redirects
docs-site/config/redirects.ts, docs-site/scripts/sync-docs.ts, docs-site/sidebars.ts
Adds redirects (/ppt-generation, /ppt, /powerpoint) and mapping/sidebar entry for the new PPT docs page.
Misc (package/manifest references)
package.json, small doc/type stubs
Minor manifest/type example updates referenced in tests/docs.

Sequence Diagram(s)

sequenceDiagram
    autonumber
    participant CLI as Client (CLI)
    participant CF as CommandFactory
    participant GS as GenerationService
    participant SG as SlideGenerator
    participant FS as FileSystem

    CLI->>CF: parse args (outputMode=ppt + ppt flags)
    CF->>GS: build multimodal input + PPT output config
    GS->>SG: request PPT generation (plan slides, images, metadata)
    SG->>FS: write PPTX file (filePath)
    FS-->>SG: file saved
    SG-->>GS: return PPTGenerationResult (filePath,totalSlides,format,metadata)
    GS-->>CF: GenerateResult (includes ppt)
    CF->>CLI: display PPT output info (file path, total slides, format)
Loading

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~45 minutes

Possibly related PRs

Suggested labels

released

Suggested reviewers

  • murdore

Poem

🐰 I hop through flags and tidy slides,

Themes and tones where insight hides,
Pages counted, images bright,
A neat ppt lands — what a sight! ✨

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'feat(ppt): Implement CLI support for PPT Gen' clearly describes the main change—adding CLI support for PowerPoint (PPT) generation, which aligns with the extensive CLI modifications in commandFactory.ts and related type updates throughout the codebase.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
📝 Coding Plan
  • Generate coding plan for human review comments

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@Tafheem-Ahemad-Juspay

Copy link
Copy Markdown
Contributor Author

@coderabbitai full review

@coderabbitai

coderabbitai Bot commented Feb 5, 2026

Copy link
Copy Markdown
✅ Actions performed

Full review triggered.

@Tafheem-Ahemad-Juspay

Copy link
Copy Markdown
Contributor Author

@coderabbitai full review

@coderabbitai

coderabbitai Bot commented Feb 5, 2026

Copy link
Copy Markdown
✅ Actions performed

Full review triggered.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🤖 Fix all issues with AI agents
In `@src/cli/factories/commandFactory.ts`:
- Around line 311-316: The GenerateCommandArgs.outputMode union type is missing
"ppt" which mismatches the CLI choices and forces unsafe casts; update the
outputMode declaration in the GenerateCommandArgs type to include "ppt" (i.e.,
change the union to "text" | "video" | "ppt") and then remove any
now-unnecessary type casts/usages that coerced strings to the old narrower type
(e.g., the cast at the location where outputMode is read and cast to the
enum/union) so callers and consumers use the widened, type-safe
GenerateCommandArgs.outputMode directly.
- Around line 347-385: Remove the unintended defaults that cause PPT mode to
auto-enable: delete the default values from the pptPages and pptAspectRatio
option definitions in commandFactory (remove default: 10 from pptPages and
default: "16:9" from pptAspectRatio) so they are undefined unless the user
explicitly sets them; ensure hasPPTFlags/isPPTMode logic continues to rely on
presence of these argv properties (or fallback behavior in
buildGenerateOutputConfig) rather than yargs-applied defaults.

Comment thread src/cli/factories/commandFactory.ts
Comment thread src/cli/factories/commandFactory.ts
@Tafheem-Ahemad-Juspay

Copy link
Copy Markdown
Contributor Author

@coderabbitai full review

@coderabbitai

coderabbitai Bot commented Feb 5, 2026

Copy link
Copy Markdown
✅ Actions performed

Full review triggered.

@murdore

murdore commented Feb 9, 2026

Copy link
Copy Markdown
Contributor

@Tafheem-Ahemad-Juspay you will need to update the documentation also for all these features that we are adding. Can you figure out from previous full requests that I have merged and understand what kind of documentation you need to update and in which places.

@vercel

vercel Bot commented Feb 21, 2026

Copy link
Copy Markdown

@Tafheem-Ahemad-Juspay is attempting to deploy a commit to the Sachin Sharma's projects Team on Vercel.

A member of the Team first needs to authorize it.

@Tafheem-Ahemad-Juspay

Copy link
Copy Markdown
Contributor Author

@coderabbitai full review

@coderabbitai

coderabbitai Bot commented Mar 13, 2026

Copy link
Copy Markdown
✅ Actions performed

Full review triggered.

@Tafheem-Ahemad-Juspay

Copy link
Copy Markdown
Contributor Author

@murdore I updated all the docs and added test case for ppt gen , please review

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 9

🧹 Nitpick comments (3)
docs/use-cases.md (1)

115-117: Remove unused writeFile import in the PPT example.

Line 116 imports writeFile, but the snippet never uses it (output is already handled via outputPath).

✂️ Small cleanup
 import { NeuroLink } from "@juspay/neurolink";
-import { writeFile } from "fs/promises";
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@docs/use-cases.md` around lines 115 - 117, Remove the unused writeFile import
from the PPT example: delete the "import { writeFile } from 'fs/promises'"
import (the symbol writeFile is never referenced; output is handled via
outputPath) so only "import { NeuroLink } from '@juspay/neurolink'" remains.
docs/sdk/api-reference.md (1)

170-173: Add an inline PPTOutputOptions definition (or direct link) near GenerateOptions.

Line 172 introduces ppt?: PPTOutputOptions, but this section only defines VideoOutputOptions locally. Adding the PPT type here will make the API section self-contained.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@docs/sdk/api-reference.md` around lines 170 - 173, The docs currently
reference ppt?: PPTOutputOptions in GenerateOptions but do not define
PPTOutputOptions; add an inline type definition (or a direct link) adjacent to
the GenerateOptions/VideoOutputOptions block that defines PPTOutputOptions,
including its key fields (e.g., slideSize, template, includeNotes, assets[]) and
short descriptions so the API reference is self-contained and mirrors the
existing VideoOutputOptions style; ensure the symbol name PPTOutputOptions
matches exactly and update cross-references if you add a link instead of an
inline type.
test/unit/ppt-generation.test.ts (1)

1991-2325: Strengthen render-coverage tests with output assertions, not only non-throw checks.

Most cases in this block only assert not.toThrow(). Add a few targeted assertions on rendered slide content/shape to catch silent rendering regressions.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@test/unit/ppt-generation.test.ts` around lines 1991 - 2325, Tests only check
that rendering doesn't throw; add targeted assertions that validate the rendered
slide structure to catch silent regressions. Update the tests that call render
(which wraps gen.renderSlide) to capture its return or inspect the PptxGenJS
instance and assert expected properties for a few representative cases (e.g.,
verify returned slide object has expected type/layout/title/content or that the
PptxGenJS slides array length increased and slide objects contain the expected
text fields). Locate usages of createMockSlideSchema, gen, render, PptxGenJS and
gen.renderSlide and in a few tests (e.g., "section-header", "image-left",
"chart-line") add one or two assertions each checking concrete output fields
instead of only .not.toThrow().
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@docs/cli-guide.md`:
- Around line 137-144: The CLI docs omit several PPT flags and incomplete alias
coverage: update the PPT Generation Options section to list all flags including
--pptAudience, --pptTone, and --pptAspectRatio, and ensure aliases are
documented (e.g., show that --pptOutput has any alias such as --output if
applicable and that --pptPages is aliased to --pages). Edit the block that
currently lists --outputMode, --pptOutput, --pptTheme, --pptPages/--pages, and
--pptNoImages to also include short descriptions and valid values/defaults for
--pptAudience, --pptTone, and --pptAspectRatio, and add the correct alias text
for --pptOutput and --pptPages so the CLI guide matches the CLI reference.

In `@docs/cli-reference.md`:
- Around line 353-356: In the CLI example command (the npx `@juspay/neurolink`
generate line) fix the model slug typo by replacing "claude-3.5-sonnet" with the
canonical hyphenated slug "claude-3-5-sonnet" so the example matches other docs
and won't fail on copy-paste.

In `@docs/configuration.md`:
- Around line 217-237: The "PPT Generation (PowerPoint Presentations)" section
currently implies universal provider compatibility; update the text to
explicitly list only the supported providers (e.g., Google Vertex via
GOOGLE_VERTEX_PROJECT/VERTEX_IMAGE_MODEL, OpenAI via OPENAI_API_KEY, Anthropic
via ANTHROPIC_API_KEY, and Google AI Studio via GOOGLE_AI_API_KEY) and remove
language suggesting any text AI model will work; adjust the example env var
block and the opening sentence to state "Supported providers: ..." and note that
other providers are not guaranteed to work.

In `@docs/features/ppt-generation.md`:
- Around line 35-37: Update the slide-count references so they are consistent:
change any occurrences of "31" (e.g., the phrase "All 31" found later in the
doc) to "35" to match the header "**35 slide types**" and ensure the
"Professional presentations" section and all other mentions (lines referencing
slide counts or "All 31") state "35" instead; scan the document for any
remaining "31" numeric mentions and replace them with "35" so all counts match.

In `@docs/getting-started/provider-setup.md`:
- Line 484: Update the "PPT Generation" sentence to clarify it's provider-gated
by replacing "with any text model" with a note that PPT output requires a
supported provider; mention the exact config key output.mode: "ppt" and either
list supported providers or add a link to provider support details (e.g.,
"requires a provider that supports PPT generation — see provider support
table"), so readers know PPT generation is not available for all text model
providers.

In `@src/cli/factories/commandFactory.ts`:
- Around line 2168-2194: detectGenerateOutputMode currently allows both
isVideoMode and isPPTMode to be true when conflicting flags are passed; update
it to detect mixed signals and fail fast: inside detectGenerateOutputMode (the
function that computes isVideoMode/isPPTMode/spinnerMessage) add logic to treat
"video" outputMode and any ppt* flags as mutually exclusive and throw or return
an explicit error when both are present, and update the caller that runs the
Video and PPT configurators (the block that invokes the configurator code paths
after detection) to check for that error and abort before running either
configurator to prevent ambiguous behavior.
- Around line 1138-1160: The PPT/video generation branch currently skips
handleOutput() and only prints PPT details when options.quiet is false, hiding
essential info; update the PPT/video flow to always emit the generated artifact
details (at minimum the ppt.filePath and ppt.totalSlides/format) regardless of
options.quiet or call handleOutput() for PPT/video branches so the standard
output handling is reused; locate the PPT/video branch that sets ppt and the
conditional around options.quiet in commandFactory (symbols: handleOutput, ppt,
options.quiet, and the PPT/video generation block) and either invoke
handleOutput(ppt...) for those types or move the file-path/slide/format
logger.always lines out of the !options.quiet guard so they always run while
keeping other verbose tips gated by quiet.

In `@test/unit/cli/ppt-flags.test.ts`:
- Around line 9-120: The tests are self-referential and assert local constants
instead of exercising the real CLI wiring; update the tests to use the actual
command definitions and parsing so regressions are caught: import the
commandFactory (or the function that builds the generate command) and/or call
buildGenerateOutputConfig (the symbols referenced in the comment) to construct
the generate command, invoke its parser with sample argv for PPT flags
(including aliases like --ppt-pages/--pages and --ppt-output/--po), and assert
the normalized yargs properties (outputMode, pptPages, pptOutput,
pptAspectRatio, pptNoImages) and final output config/defaults (pages,
aspectRatio, generateAiImages) returned by buildGenerateOutputConfig; ensure
tests cover supported theme/audience/tone/aspect values and provider-related
code paths by parsing with different provider-related flags to validate mapping
and multimodal handling.

In `@test/unit/ppt-generation.test.ts`:
- Around line 2037-2039: The test case in ppt-generation.test.ts constructs a
slide with type: "closing" but uses layout: "contact-info", which maps to
thank-you layouts; change the slide's layout to a valid closing layout (e.g.,
replace "contact-info" with the correct closing layout name used by the renderer
or theme) so the `type: "closing"` branch is exercised correctly, and update any
associated snapshot/expected output for the closing layout if required; look for
the slide object in the test where type: "closing" and adjust its layout
property accordingly.

---

Nitpick comments:
In `@docs/sdk/api-reference.md`:
- Around line 170-173: The docs currently reference ppt?: PPTOutputOptions in
GenerateOptions but do not define PPTOutputOptions; add an inline type
definition (or a direct link) adjacent to the GenerateOptions/VideoOutputOptions
block that defines PPTOutputOptions, including its key fields (e.g., slideSize,
template, includeNotes, assets[]) and short descriptions so the API reference is
self-contained and mirrors the existing VideoOutputOptions style; ensure the
symbol name PPTOutputOptions matches exactly and update cross-references if you
add a link instead of an inline type.

In `@docs/use-cases.md`:
- Around line 115-117: Remove the unused writeFile import from the PPT example:
delete the "import { writeFile } from 'fs/promises'" import (the symbol
writeFile is never referenced; output is handled via outputPath) so only "import
{ NeuroLink } from '@juspay/neurolink'" remains.

In `@test/unit/ppt-generation.test.ts`:
- Around line 1991-2325: Tests only check that rendering doesn't throw; add
targeted assertions that validate the rendered slide structure to catch silent
regressions. Update the tests that call render (which wraps gen.renderSlide) to
capture its return or inspect the PptxGenJS instance and assert expected
properties for a few representative cases (e.g., verify returned slide object
has expected type/layout/title/content or that the PptxGenJS slides array length
increased and slide objects contain the expected text fields). Locate usages of
createMockSlideSchema, gen, render, PptxGenJS and gen.renderSlide and in a few
tests (e.g., "section-header", "image-left", "chart-line") add one or two
assertions each checking concrete output fields instead of only .not.toThrow().

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 94798b51-350c-43d6-88d2-f458c43fb6c6

📥 Commits

Reviewing files that changed from the base of the PR and between 86ef5f2 and 7f5709a.

📒 Files selected for processing (28)
  • README.md
  • docs-site/config/redirects.ts
  • docs-site/scripts/sync-docs.ts
  • docs-site/sidebars.ts
  • docs/cli-guide.md
  • docs/cli-reference.md
  • docs/configuration.md
  • docs/error-handling.md
  • docs/features/audio-input.md
  • docs/features/index.md
  • docs/features/multimodal-chat.md
  • docs/features/multimodal.md
  • docs/features/ppt-generation.md
  • docs/features/tts.md
  • docs/getting-started/provider-setup.md
  • docs/getting-started/quick-start.md
  • docs/performance-optimization.md
  • docs/reference/error-codes.md
  • docs/sdk/api-reference.md
  • docs/troubleshooting.md
  • docs/tutorials.md
  • docs/use-cases.md
  • src/cli/factories/commandFactory.ts
  • src/lib/features/ppt/index.ts
  • src/lib/types/cli.ts
  • src/lib/types/generateTypes.ts
  • test/unit/cli/ppt-flags.test.ts
  • test/unit/ppt-generation.test.ts

Comment thread docs/cli-guide.md
Comment thread docs/cli-reference.md
Comment thread docs/configuration.md
Comment thread docs/features/ppt-generation.md
Comment thread docs/getting-started/provider-setup.md Outdated
Comment thread src/cli/factories/commandFactory.ts Outdated
Comment thread src/cli/factories/commandFactory.ts
Comment thread test/unit/cli/ppt-flags.test.ts Outdated
Comment thread test/unit/ppt-generation.test.ts
@murdore
murdore merged commit 83e6847 into juspay:release Mar 14, 2026
8 of 9 checks passed
@github-actions

Copy link
Copy Markdown
Contributor

🎉 This PR is included in version 9.24.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

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

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants