Skip to content

Add Ruby + PostgreSQL quickstart guide#773

Open
Nsanjayboruds wants to merge 4 commits intokeploy:mainfrom
Nsanjayboruds:add-ruby-postgresql-quickstart
Open

Add Ruby + PostgreSQL quickstart guide#773
Nsanjayboruds wants to merge 4 commits intokeploy:mainfrom
Nsanjayboruds:add-ruby-postgresql-quickstart

Conversation

@Nsanjayboruds
Copy link
Copy Markdown

Add Ruby + PostgreSQL Quickstart Guide

📝 Description

This PR adds a comprehensive quickstart guide for Ruby (Sinatra) with PostgreSQL integration, demonstrating how to use Keploy for automated API testing with Ruby applications.

🎯 Changes Made

  • ✅ Created new quickstart documentation: ruby-sinatra-postgres.md

    • Includes both Docker Compose and Local setup instructions
    • Complete CRUD API examples (GET, POST, PUT, DELETE)
    • Clear step-by-step Keploy record and test commands
    • Follows existing documentation style and structure
  • ✅ Added Ruby language support to QuickStartFilter.js

    • Added Ruby gem icon with official Ruby red color (#CC342D)
    • Enables filtering quickstarts by Ruby language
  • ✅ Registered quickstart in QuickStartList.js

    • Added entries for both Docker and Local environments
    • Properly linked to documentation sections
  • ✅ Updated sidebar navigation in version-4.0.0-sidebars.json

    • Added Ruby category under QuickStarts section
    • Maintains consistent structure with other languages

🔗 Related Repository

Sample application repository: https://github.com/Nsanjayboruds/keploy-ruby-postgresql-quickstart

✅ Pre-submission Checklist

  • Build passes locally (npm run build successful)
  • Design matches existing quickstarts
  • Both Docker and Local setup instructions included
  • Follows existing code patterns
  • Documentation is clear and beginner-friendly

📸 Preview

The quickstart covers:

  • Health check endpoint
  • Books CRUD operations
  • PostgreSQL database integration
  • Keploy record/replay workflows

🙏 Additional Notes

This is my first contribution to Keploy docs. Looking forward to feedback and happy to make any requested changes!

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds a new Ruby (Sinatra) + PostgreSQL quickstart and wires it into the Quickstarts UI and sidebar so users can discover and follow the guide.

Changes:

  • Added a new Ruby (Sinatra) + PostgreSQL Books CRUD quickstart doc (Docker + Local flows).
  • Added “Ruby” to the Quickstart language filter UI and registered Ruby quickstart entries in the list.
  • Added a Ruby category under QuickStarts in the v4.0.0 sidebar.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.

File Description
versioned_sidebars/version-4.0.0-sidebars.json Adds Ruby category + doc entry under QuickStarts for v4.0.0 navigation.
versioned_docs/version-4.0.0/quickstart/ruby-sinatra-postgres.md New Ruby+Postgres quickstart guide content (Docker + Local).
src/components/QuickStartList.js Registers Ruby quickstarts (Docker + Local) in the Quickstarts catalog.
src/components/QuickStartFilter.js Adds Ruby as a selectable language with icon/color in the filter UI.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@Nsanjayboruds Nsanjayboruds force-pushed the add-ruby-postgresql-quickstart branch 2 times, most recently from d1b6200 to 4f2b408 Compare January 30, 2026 02:45
@Nsanjayboruds
Copy link
Copy Markdown
Author

@copilot open a new pull request to apply changes based on the comments in this thread

1 similar comment
@Nsanjayboruds
Copy link
Copy Markdown
Author

@copilot open a new pull request to apply changes based on the comments in this thread

Copy link
Copy Markdown
Contributor

@Achanandhi-M Achanandhi-M left a comment

Choose a reason for hiding this comment

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

Hey @Nsanjayboruds , thanks a lot for adding the changes—really appreciate the effort. There are a few small things that still need to be added; you can use this guide as a reference: https://github.com/keploy/docs/blob/main/ADDING_A_QUICKSTART.md

Also, if possible, could you please include a short video showcasing your changes? That would be very helpful

@Nsanjayboruds
Copy link
Copy Markdown
Author

@Nsanjayboruds Nsanjayboruds force-pushed the add-ruby-postgresql-quickstart branch 2 times, most recently from 8d671ce to eadbf29 Compare February 2, 2026 12:17
@Nsanjayboruds
Copy link
Copy Markdown
Author

Nsanjayboruds commented Feb 2, 2026

Hey @Nsanjayboruds , thanks a lot for adding the changes—really appreciate the effort. There are a few small things that still need to be added; you can use this guide as a reference: https://github.com/keploy/docs/blob/main/ADDING_A_QUICKSTART.md

Also, if possible, could you please include a short video showcasing your changes? That would be very helpful

hey @Achanandhi-M i added a video showcasing my change

@Nsanjayboruds
Copy link
Copy Markdown
Author

RUBY_QUICKSTART_DEMO

Signed-off-by: Nsanjayboruds <nishantborude555@gmail.com>
@Nsanjayboruds Nsanjayboruds force-pushed the add-ruby-postgresql-quickstart branch from 7219218 to ba4b880 Compare February 3, 2026 11:17
Signed-off-by: Nsanjayboruds <nishantborude555@gmail.com>
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 4 out of 8 changed files in this pull request and generated 4 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

}
]
},
"keploy-cloud/cloud-installation",
Copy link

Copilot AI Apr 9, 2026

Choose a reason for hiding this comment

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

keploy-cloud/cloud-installation is already included in the "Installation" category as the "Enterprise" doc (line 31). Adding it again as a standalone item will duplicate the same page in the sidebar; please remove the extra standalone entry (or keep only one location).

Suggested change
"keploy-cloud/cloud-installation",

Copilot uses AI. Check for mistakes.
Comment on lines +14 to +20
- ruby-framework
keyword:
- Sinatra Framework
- PostgreSQL
- Ruby
- API Test generator
- Auto case generation
Copy link

Copilot AI Apr 9, 2026

Choose a reason for hiding this comment

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

Frontmatter uses keyword: but Docusaurus expects keywords: (plural) for SEO metadata. As written, these entries will be ignored; rename keyword to keywords to match the rest of the docs.

Copilot uses AI. Check for mistakes.
Comment on lines +213 to +214
If you stopped the app after verification, restart recording:

Copy link

Copilot AI Apr 9, 2026

Choose a reason for hiding this comment

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

The local flow runs keploy record -c "bundle exec ruby app.rb" twice (first under "Start the Application with Keploy", then again under "Lights, Camera, Record!"). This makes the workflow ambiguous and can lead to port-in-use issues if users don’t stop the previous run; consider keeping a single recording run (verify health + generate testcases within it) or explicitly instruct when to stop before restarting.

Suggested change
If you stopped the app after verification, restart recording:
Keep the existing `keploy record` session running after the health check, then start generating testcases by making API calls.
If you already stopped the recording session, start it again with:

Copilot uses AI. Check for mistakes.
Comment on lines +309 to +328
// Ruby list

{
title: "Ruby + Postgres",
language: "Ruby",
server: "Docker",
description:
"A sample Books CRUD API to demonstrate how seamlessly Keploy integrates with Ruby (Sinatra) and PostgreSQL.",
link: "/docs/quickstart/samples-ruby/#using-docker-compose-",
},

{
title: "Ruby + Postgres",
language: "Ruby",
server: "Local",
description:
"A sample Books CRUD API to demonstrate how seamlessly Keploy integrates with Ruby (Sinatra) and PostgreSQL.",
link: "/docs/quickstart/samples-ruby/#running-app-locally-on-linuxwsl-",
},

Copy link

Copilot AI Apr 9, 2026

Choose a reason for hiding this comment

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

src/components/QuickStartFilter is imported by versioned docs pages (e.g., version-3.0.0 quickstart pages). Since QuickStartList is shared across all versions, adding v4-only Ruby links here will surface Ruby quickstarts in older doc versions where /quickstart/samples-ruby doesn’t exist. Consider making the list version-aware or adding the Ruby quickstart doc+sidebar entries to the older supported versions.

Suggested change
// Ruby list
{
title: "Ruby + Postgres",
language: "Ruby",
server: "Docker",
description:
"A sample Books CRUD API to demonstrate how seamlessly Keploy integrates with Ruby (Sinatra) and PostgreSQL.",
link: "/docs/quickstart/samples-ruby/#using-docker-compose-",
},
{
title: "Ruby + Postgres",
language: "Ruby",
server: "Local",
description:
"A sample Books CRUD API to demonstrate how seamlessly Keploy integrates with Ruby (Sinatra) and PostgreSQL.",
link: "/docs/quickstart/samples-ruby/#running-app-locally-on-linuxwsl-",
},
// Ruby quickstarts are intentionally excluded from this shared list because
// older versioned docs pages also import this component and do not include
// /docs/quickstart/samples-ruby. Add them back only when this list becomes
// version-aware or when the Ruby quickstart docs exist in all supported versions.

Copilot uses AI. Check for mistakes.
Copy link
Copy Markdown
Member

@amaan-bhati amaan-bhati left a comment

Choose a reason for hiding this comment

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

Thank you for adding the Ruby Sinatra and PostgreSQL quickstart and for providing the demo video. The guide structure and content are a good start.

A few things need to be addressed before this is ready to merge:

Issues Found

1. Image filenames with spaces

The committed image files have problematic names:

  • ruby quickstartdocker_Compose.png - contains a space
  • ruby_keploy .png - has a trailing space before the extension

These cause URL encoding issues and are inconsistent with the repo's image naming conventions. Please rename them using only underscores or hyphens with no spaces or trailing characters.

2. QuickStartFilter.js over-reformatted

The diff shows 149 additions and 30 deletions in QuickStartFilter.js, which is far more than what adding a single Ruby entry requires. The extra formatting-only changes create unnecessary merge conflicts for other open PRs. Please revert those and keep the diff scoped to only the Ruby entry addition.

3. Outstanding items from contributing guide

Please confirm all items from ADDING_A_QUICKSTART.md have been addressed and request a re-review from the maintainer.

Please also rebase against main before resubmitting as there are merge conflicts with other open PRs touching the same files.

Signed-off-by: Nsanjayboruds <nishantborude555@gmail.com>
@Nsanjayboruds Nsanjayboruds force-pushed the add-ruby-postgresql-quickstart branch from 96145ca to e68ccf8 Compare April 10, 2026 10:52
Signed-off-by: Nishant Sanjay borude  <nishantborude555@gmail.com>
@Nsanjayboruds
Copy link
Copy Markdown
Author

Sidebar duplicate comment
Thanks for checking. I re-verified this on the latest branch state and could not reproduce a duplicate sidebar entry for this page, so no removal was needed. Resolving this thread as not reproducible on current commit.

Frontmatter keyword vs keywords
Good catch, fixed. I changed frontmatter from keyword to keywords so metadata is correctly picked up. Included in the latest push.

Local flow running keploy record twice
Agreed, this was ambiguous. I updated the local flow so recording stays in a single session and clarified that health verification should be run in a separate terminal. Included in the latest push.

QuickStartFilter over-formatted / large diff
Agreed. I reverted formatting-only edits and restored QuickStartFilter formatting to match the existing file style, keeping this PR scoped to functional quickstart additions only.

Image filenames with spaces / trailing characters
Fixed. I renamed the problematic image files to clean names (no spaces or trailing characters), updated references, and removed the old filenames from the branch.

Outstanding ADDING_A_QUICKSTART checklist + rebase request
Confirmed. I addressed the checklist items for latest version quickstart integration, completed a rebase onto main, resolved conflicts, ran a successful local docs build, and pushed the updated branch. Please re-review when convenient.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants