Add visual DynamoDB architecture slide + PPTX export to pitch deck - #60
Add visual DynamoDB architecture slide + PPTX export to pitch deck#60Tar-ive wants to merge 4 commits into
Conversation
New slide 8 (Architecture) covers three pillars of DynamoDB usage: - Data backbone: 8 tables, PAY_PER_REQUEST, GSI access patterns - Maxi's memory: 13 AI tools backed by DynamoDB reads/writes - Auth & identity sync: Clerk JWT → Lambda → DynamoDB pipeline Includes architecture flow bar (Browser → Clerk → API GW → Lambda → DynamoDB + S3 Vectors + Bedrock) and footer notes on cost controls. Subsequent slides renumbered (Market → 09, Business model → 10, Competition → 11). Co-Authored-By: Saksham <tarive22@gmail.com>
Replace text-heavy layout with: - Color-coded service boxes (gradient backgrounds per AWS service) - SVG arrows showing data flow: Next.js → Clerk → API GW → Lambda - Down-arrows to data layer: DynamoDB, S3 Vectors, Bedrock - Table pills inside DynamoDB block showing all 8 tables + 4 GSIs - Compact 3-column pillar cards at bottom - Tag pills for PAY_PER_REQUEST, PITR, kill-switch in header Co-Authored-By: Saksham <tarive22@gmail.com>
🤖 Devin AI EngineerI'll be helping with this pull request! Here's what you should know: ✅ I will automatically:
Note: I can only respond to comments from users who have write access to this repository. ⚙️ Control Options:
|
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Warning Review limit reached
More reviews will be available in 53 minutes and 31 seconds. Learn how PR review limits work. Your organization has used up its prepaid credits, and credit purchases are no longer available. Enable the review add-on in the billing tab to keep reviews running — you're only billed for reviews past your plan's rate limits ($0.25/file). ⌛ How to resolve this issue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based credits. 🚦 How do rate limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please see our Fair Usage Limits Policy for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
WalkthroughA new Architecture slide is added to the deck, downstream footers are renumbered, and the page gains a Download PPTX control plus client-side and Node-based PPTX generation paths. ChangesArchitecture Slide + PPTX Export
Estimated code review effort🎯 4 (Complex) | ⏱️ ~45 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
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. Comment |
- Coral 'PPTX' button (bottom-right) generates an editable PowerPoint file client-side using PptxGenJS CDN bundle - All 11 slides recreated with proper text boxes, shapes, colors - Also adds deck/generate-pptx.mjs for Node.js server-side generation - deck/package.json and node_modules are gitignored Co-Authored-By: Saksham <tarive22@gmail.com>
There was a problem hiding this comment.
Actionable comments posted: 7
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@deck/generate-pptx.mjs`:
- Around line 261-263: The header pill positions in generate-pptx.mjs overflow
the slide bounds, clipping the third pill in the wide layout. Adjust the pill
layout in the forEach block that creates the roundedRect and addText elements so
the combined x and w for the third item stays within the slide width, either by
reducing spacing, shrinking width, or both. Keep the fix centered around the
existing pill generation logic and the same shape/text pairing.
- Around line 266-347: The standalone PPTX slide spec for Architecture · 08 has
drifted from the browser generator, so both export paths now produce different
decks. Update the generate-pptx.mjs slide-building logic to match the shared
browser slide builder in deck/index.html by keeping the service labels,
DynamoDB/GSI layout, and pillar copy in sync, using the same symbols and content
sources where possible. If duplication remains, extract the Architecture · 08
slide data into one shared spec and have both renderers consume it.
In `@deck/index.html`:
- Around line 179-188: The fixed-position download chrome defined by .dl-btn is
still visible in print/PDF output, so add a print media override to hide it when
printing or using Reveal’s ?print-pdf mode. Update the existing styles near
.dl-btn so the button is suppressed in print media, keeping the download control
only for on-screen use.
- Around line 1083-1086: The PPTX architecture copy is out of sync with the
Reveal slide because the Lambda label in the deck data only emits “Node 20” and
omits the memory constraint. Update the architecture item used by the PPTX
export in the relevant slide data/config so the Lambda subtitle matches the
Reveal content, including the “256 MB” text alongside “Node 20,” and keep the
source copy consistent wherever that architecture block is defined.
- Around line 1078-1080: The third badge in the slide badge loop extends past
the right edge of the `LAYOUT_WIDE` canvas, so adjust the positioning logic in
the `forEach` that adds the `roundRect` and `addText` badges to keep `$1k
kill-switch` fully within bounds. Reduce the horizontal offset, width, or
spacing for the badge group so the final badge remains inside the slide width
and cannot clip at render time.
- Line 891: The PptxGenJS text option here is using an unsupported property, so
update the text creation calls in the relevant section of deck/index.html to use
charSpacing instead of letterSpacing. Make the same replacement at the matching
s.addText usage later in the file so both text boxes preserve character spacing
correctly.
- Around line 866-867: The PPTX export handlers are not awaiting the Promise
returned by PptxGenJS.writeFile(), so failures can become unhandled rejections
with no feedback. Update downloadPPTX() and the other PPTX export call site to
be async, await the writeFile() call, and wrap it in try/catch so errors are
surfaced to the user with the existing export flow.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 2e6d156c-3f18-4afd-9ff3-eabb8ffe5a13
📒 Files selected for processing (2)
deck/generate-pptx.mjsdeck/index.html
- Fix pill overflow: x=8.0, spacing=1.7, w=1.55 keeps pills within 13.33in - letterSpacing → charSpacing (PptxGenJS correct property name) - Add @media print rule to hide .dl-btn in print/PDF - Make downloadPPTX async, await writeFile, wrap in try/catch - Sync Lambda subtitle to 'Node 20 · 256 MB' in client-side export Co-Authored-By: Saksham <tarive22@gmail.com>
Summary
Two additions to the pitch deck (
deck/):1. Visual Architecture slide (slide 8)
New slide with a CSS-drawn architecture diagram covering the three pillars of DynamoDB usage:
Next.js → Clerk → API Gateway → Lambda) with gradient fills and SVG arrowsS3 VectorsandBedrockPAY_PER_REQUEST,PITR backups,$1k kill-switchSubsequent slides renumbered: Market → 09, Business model → 10, Competition → 11.
2. PPTX export
deck/generate-pptx.mjs— Node.js script (node generate-pptx.mjs) for server-side generation of the same PPTXLink to Devin session: https://calhacks-promptetheus.devinenterprise.com/sessions/cfbf662843ba46a493a84b9fd7a9aca7
Requested by: @Tar-ive
Summary by CodeRabbit