Skip to content

Commit 0b1fd65

Browse files
authored
Merge branch 'main' into fix/3649-broken-anchors-server-prefix
2 parents 873d58a + ece6117 commit 0b1fd65

5 files changed

Lines changed: 875 additions & 175 deletions

File tree

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -203,4 +203,4 @@ Temporary Items
203203

204204
# Support for Project snippet scope
205205

206-
# End of https://www.toptal.com/developers/gitignore/api/macos,linux,jetbrains,visualstudiocode
206+
# End of https://www.toptal.com/developers/gitignore/api/macos,linux,jetbrains,visualstudiocode

src/components/GetStartedPaths.js

Lines changed: 43 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,8 @@
11
import React from "react";
22
import Link from "@docusaurus/Link";
33
import useBaseUrl from "@docusaurus/useBaseUrl";
4-
import {
5-
FaRocket,
6-
FaMagic,
7-
FaRetweet,
8-
FaLaptopCode,
9-
} from "react-icons/fa";
10-
import { SiKubernetes } from "react-icons/si";
4+
import {FaRocket, FaMagic, FaRetweet, FaLaptopCode} from "react-icons/fa";
5+
import {SiKubernetes} from "react-icons/si";
116

127
export const GetStartedPaths = () => {
138
return (
@@ -21,7 +16,8 @@ export const GetStartedPaths = () => {
2116
How do you want to get started?
2217
</h2>
2318
<p className="mx-auto max-w-2xl text-gray-600 dark:text-gray-400">
24-
Pick a workflow to begin. You can switch anytime—both paths lead to reliable, replayable tests.
19+
Pick a workflow to begin. You can switch anytime—both paths lead to
20+
reliable, replayable tests.
2521
</p>
2622
</div>
2723

@@ -36,8 +32,8 @@ export const GetStartedPaths = () => {
3632
{/* Icon Badge */}
3733
<div className="relative">
3834
<div className="mb-4 inline-flex items-center justify-center rounded-xl bg-gradient-to-br from-orange-400 to-orange-600 p-3 text-white shadow-lg shadow-orange-500/25">
39-
<FaMagic className="h-6 w-6" />
40-
</div>
35+
<FaMagic className="h-6 w-6" />
36+
</div>
4137
</div>
4238

4339
{/* Path Label */}
@@ -55,7 +51,8 @@ export const GetStartedPaths = () => {
5551
Generate Tests with Keploy AI
5652
</h3>
5753
<p className="mb-4 text-sm text-gray-600 dark:text-gray-400">
58-
Generate validated API test suites from OpenAPI, Postman, cURL, or endpoints—then run them across staging/QA.
54+
Generate validated API test suites from OpenAPI, Postman, cURL, or
55+
endpoints—then run them across staging/QA.
5956
</p>
6057

6158
{/* Features */}
@@ -83,7 +80,9 @@ export const GetStartedPaths = () => {
8380
{/* Console Options */}
8481
<div className="mt-auto space-y-3 pt-2">
8582
<Link
86-
to={useBaseUrl("/docs/running-keploy/generate-api-tests-using-ai/")}
83+
to={useBaseUrl(
84+
"/docs/running-keploy/generate-api-tests-using-ai/"
85+
)}
8786
className="group/option flex items-start justify-between gap-3 rounded-xl border border-gray-200 bg-white/50 p-3 min-h-[92px] transition-all duration-200 hover:border-orange-300 hover:bg-orange-50/50 hover:no-underline dark:border-gray-600 dark:bg-gray-800/50 dark:hover:border-orange-500/50 dark:hover:bg-orange-900/10"
8887
>
8988
<div className="flex items-start gap-3">
@@ -95,15 +94,20 @@ export const GetStartedPaths = () => {
9594
Generate from OpenAPI Schema / Postman Collection / cURL
9695
</h4>
9796
<p className="text-xs text-gray-500 dark:text-gray-400">
98-
Connect resources in Keploy Console and generate validated suites
97+
Connect resources in Keploy Console and generate validated
98+
suites
9999
</p>
100100
</div>
101101
</div>
102-
<span className="mt-1 text-gray-400 transition-colors group-hover/option:text-orange-500 dark:text-gray-500"></span>
102+
<span className="mt-1 text-gray-400 transition-colors group-hover/option:text-orange-500 dark:text-gray-500">
103+
104+
</span>
103105
</Link>
104106

105107
<Link
106-
to={useBaseUrl("/docs/running-keploy/api-testing-chrome-extension/")}
108+
to={useBaseUrl(
109+
"/docs/running-keploy/api-testing-chrome-extension/"
110+
)}
107111
className="group/option flex items-start justify-between gap-3 rounded-xl border border-gray-200 bg-white/50 p-3 min-h-[92px] transition-all duration-200 hover:border-orange-300 hover:bg-orange-50/50 hover:no-underline dark:border-gray-600 dark:bg-gray-800/50 dark:hover:border-orange-500/50 dark:hover:bg-orange-900/10"
108112
>
109113
<div className="flex items-start gap-3">
@@ -119,7 +123,9 @@ export const GetStartedPaths = () => {
119123
</p>
120124
</div>
121125
</div>
122-
<span className="mt-1 text-gray-400 transition-colors group-hover/option:text-orange-500 dark:text-gray-500"></span>
126+
<span className="mt-1 text-gray-400 transition-colors group-hover/option:text-orange-500 dark:text-gray-500">
127+
128+
</span>
123129
</Link>
124130
</div>
125131
</div>
@@ -134,8 +140,8 @@ export const GetStartedPaths = () => {
134140
{/* Icon Badge */}
135141
<div className="relative">
136142
<div className="mb-4 inline-flex items-center justify-center rounded-xl bg-gradient-to-br from-purple-500 to-purple-700 p-3 text-white shadow-lg shadow-purple-500/25">
137-
<FaRetweet className="h-6 w-6" />
138-
</div>
143+
<FaRetweet className="h-6 w-6" />
144+
</div>
139145
</div>
140146
{/* Path Label */}
141147
<div className="mb-2 flex items-center gap-2">
@@ -152,21 +158,28 @@ export const GetStartedPaths = () => {
152158
Record & Replay API Traffic
153159
</h3>
154160
<p className="mb-4 text-sm text-gray-600 dark:text-gray-400">
155-
Record real API interactions (and dependencies) and replay them deterministically in local or CI.
161+
Record real API interactions (and dependencies) and replay them
162+
deterministically in local or CI.
156163
</p>
157164

158165
{/* Highlights */}
159166
<ul className="mb-6 space-y-2">
160167
<li className="flex items-center gap-2 text-sm text-gray-600 dark:text-gray-400">
161-
<span className="flex h-5 w-5 items-center justify-center rounded-full bg-green-100 text-green-600 dark:bg-green-900/30 dark:text-green-400"></span>
168+
<span className="flex h-5 w-5 items-center justify-center rounded-full bg-green-100 text-green-600 dark:bg-green-900/30 dark:text-green-400">
169+
170+
</span>
162171
Deterministic replays (with mocks)
163172
</li>
164173
<li className="flex items-center gap-2 text-sm text-gray-600 dark:text-gray-400">
165-
<span className="flex h-5 w-5 items-center justify-center rounded-full bg-green-100 text-green-600 dark:bg-green-900/30 dark:text-green-400"></span>
174+
<span className="flex h-5 w-5 items-center justify-center rounded-full bg-green-100 text-green-600 dark:bg-green-900/30 dark:text-green-400">
175+
176+
</span>
166177
Mocks dependencies automatically
167178
</li>
168179
<li className="flex items-center gap-2 text-sm text-gray-600 dark:text-gray-400">
169-
<span className="flex h-5 w-5 items-center justify-center rounded-full bg-green-100 text-green-600 dark:bg-green-900/30 dark:text-green-400"></span>
180+
<span className="flex h-5 w-5 items-center justify-center rounded-full bg-green-100 text-green-600 dark:bg-green-900/30 dark:text-green-400">
181+
182+
</span>
170183
Ready for CI pipelines
171184
</li>
172185
</ul>
@@ -183,14 +196,16 @@ export const GetStartedPaths = () => {
183196
</div>
184197
<div>
185198
<h4 className="mb-0.5 text-sm font-semibold text-gray-900 dark:text-white">
186-
Record in K8s, Replay Anywhere (Local/CI/K8s)
199+
Record in K8s, Replay Anywhere (Local/CI/K8s)
187200
</h4>
188201
<p className="text-xs text-gray-500 dark:text-gray-400">
189202
Capture from staging/prod, replay in your pipeline
190203
</p>
191204
</div>
192205
</div>
193-
<span className="mt-1 text-gray-400 transition-colors group-hover/option:text-purple-500 dark:text-gray-500"></span>
206+
<span className="mt-1 text-gray-400 transition-colors group-hover/option:text-purple-500 dark:text-gray-500">
207+
208+
</span>
194209
</Link>
195210

196211
<Link
@@ -204,20 +219,17 @@ export const GetStartedPaths = () => {
204219
<div>
205220
<h4 className="mb-0.5 flex items-center gap-2 text-sm font-semibold text-gray-900 dark:text-white">
206221
Record Locally
207-
<span className="rounded-md bg-purple-50 px-2 py-0.5 text-[10px] font-semibold uppercase tracking-wider text-purple-700 dark:bg-purple-900/30 dark:text-purple-200">
208-
Open Source
209-
</span>
210222
</h4>
211223
<p className="text-xs text-gray-500 dark:text-gray-400">
212-
Classic Open Source experience for rapid iteration
224+
Classic Keploy CLI experience for rapid iteration
213225
</p>
214226
</div>
215227
</div>
216-
<span className="mt-1 text-gray-400 transition-colors group-hover/option:text-purple-500 dark:text-gray-500"></span>
228+
<span className="mt-1 text-gray-400 transition-colors group-hover/option:text-purple-500 dark:text-gray-500">
229+
230+
</span>
217231
</Link>
218232
</div>
219-
220-
221233
</div>
222234
</div>
223235
</div>

versioned_docs/version-4.0.0/keploy-explained/dev-guide.md

Lines changed: 198 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ tags:
99
- contribution guide
1010
---
1111

12-
# Contribution Guide 🚀
12+
# Contribution Guide
1313

1414
Welcome to the world of Keploy development! This guide will help you set up Keploy locally.
1515

@@ -113,3 +113,200 @@ Happy testing! 🧪🔍💻
113113
> **Note** :- Run `go run github.com/99designs/gqlgen generate --config pkg/graph/gqlgen.yml` to generate the graphql server stubs which can be used when working with unit testing libraries like JUnit, PyTest, etc..
114114
115115
Hope this helps you out, if you still have any questions, reach out to us on [slack](https://keploy.slack.com/join/shared_invite/zt-357qqm9b5-PbZRVu3Yt2rJIa6ofrwWNg) .
116+
117+
## Installing the Open Source Build
118+
119+
To install the open-source version of Keploy, use the `--oss` flag:
120+
121+
import Tabs from '@theme/Tabs';
122+
import TabItem from '@theme/TabItem';
123+
import StartKeploy from '@site/src/components/StartKeploy';
124+
import StartKeployDocker from '@site/src/components/StartKeployDocker';
125+
126+
<Tabs>
127+
<TabItem value="linux" label="Linux">
128+
<br />
129+
130+
:::info
131+
Make sure your Linux kernel version is **5.10 or higher**.
132+
:::
133+
134+
👉 **Choose your preferred method:**
135+
136+
<Tabs>
137+
<TabItem value="linux-native" label="Native">
138+
139+
### 1. Install Keploy
140+
141+
```bash
142+
curl --silent -O -L https://keploy.io/install.sh && source install.sh --oss
143+
```
144+
145+
### 2. Once done, you should see something like this:
146+
147+
```bash
148+
▓██▓▄
149+
▓▓▓▓██▓█▓▄
150+
████████▓▒
151+
▀▓▓███▄ ▄▄ ▄ ▌
152+
▄▌▌▓▓████▄ ██ ▓█▀ ▄▌▀▄ ▓▓▌▄ ▓█ ▄▌▓▓▌▄ ▌▌ ▓
153+
▓█████████▌▓▓ ██▓█▄ ▓█▄▓▓ ▐█▌ ██ ▓█ █▌ ██ █▌ █▓
154+
▓▓▓▓▀▀▀▀▓▓▓▓▓▓▌ ██ █▓ ▓▌▄▄ ▐█▓▄▓█▀ █▓█ ▀█▄▄█▀ █▓█
155+
▓▌ ▐█▌ █▌
156+
157+
158+
OPEN SOURCE
159+
160+
Available Commands:
161+
example Example to record and test via keploy
162+
config --generate generate the keploy configuration file
163+
record record the keploy testcases from the API calls
164+
test run the recorded testcases and execute assertions
165+
update Update Keploy
166+
167+
Flags:
168+
--debug Run in debug mode
169+
-h, --help help for keploy
170+
-v, --version version for keploy
171+
172+
Use "keploy [command] --help" for more information about a command.
173+
```
174+
175+
🎉 You have successfully installed **Keploy OSS on Linux**.
176+
177+
<StartKeploy />
178+
</TabItem>
179+
180+
<TabItem value="docker-linux" label="Docker">
181+
182+
### Install Keploy OSS with Docker on Linux
183+
184+
1. Make sure Docker is installed on Linux.
185+
2. Install Keploy
186+
187+
```bash
188+
curl --silent -O -L https://keploy.io/install.sh && source install.sh --oss
189+
```
190+
191+
🎉 You have successfully set up **Keploy OSS on Linux** using **Docker**.
192+
193+
<StartKeployDocker />
194+
</TabItem>
195+
</Tabs>
196+
</TabItem>
197+
198+
<TabItem value="macos" label="macOS">
199+
<br />
200+
201+
:::info
202+
Keploy does not natively support macOS. You can run it using **Lima** or **Docker**.
203+
:::
204+
205+
<Tabs>
206+
<TabItem value="lima" label="Lima">
207+
208+
### Install Keploy OSS with Lima
209+
210+
1. Check if Lima is installed. If yes, skip to step 6.
211+
2. Install Lima
212+
213+
```bash
214+
brew install lima
215+
```
216+
217+
3. Create a Debian instance
218+
219+
```bash
220+
limactl create template://debian-12
221+
```
222+
223+
4. Start the instance
224+
225+
```bash
226+
limactl start debian-12
227+
```
228+
229+
5. Enter the Linux shell
230+
231+
```bash
232+
limactl shell debian-12
233+
```
234+
235+
6. Install Keploy inside Lima
236+
237+
```bash
238+
curl --silent -O -L https://keploy.io/install.sh && source install.sh --oss
239+
```
240+
241+
🎉 You have successfully set up **Keploy OSS on macOS** using **Lima**.
242+
243+
<StartKeploy />
244+
</TabItem>
245+
246+
<TabItem value="docker-mac" label="Docker">
247+
248+
### Install Keploy OSS with Docker on macOS
249+
250+
1. Make sure Docker Desktop is running on macOS.
251+
2. Install Keploy
252+
253+
```bash
254+
curl --silent -O -L https://keploy.io/install.sh && source install.sh --oss
255+
```
256+
257+
🎉 You have successfully set up **Keploy OSS on macOS** using **Docker**.
258+
259+
<StartKeployDocker />
260+
</TabItem>
261+
</Tabs>
262+
</TabItem>
263+
264+
<TabItem value="windows" label="Windows">
265+
<br />
266+
267+
:::info
268+
You can run Keploy using **WSL** or **Docker** on Windows.
269+
:::
270+
271+
<Tabs>
272+
<TabItem value="wsl" label="WSL">
273+
274+
### Install Keploy OSS with WSL
275+
276+
1. Enable WSL
277+
278+
```shell
279+
wsl --install -d <Distribution Name>
280+
```
281+
282+
👉 We recommend **Ubuntu-22.04**.
283+
284+
2. Install Keploy inside WSL
285+
286+
```shell
287+
curl --silent -O -L https://keploy.io/install.sh && source install.sh --oss
288+
```
289+
290+
🎉 You have successfully set up **Keploy OSS on Windows** using **WSL**.
291+
292+
<StartKeploy />
293+
</TabItem>
294+
295+
<TabItem value="docker-windows" label="Docker">
296+
297+
### Install Keploy OSS with Docker on Windows
298+
299+
1. Make sure Docker Desktop is running on Windows.
300+
2. Install Keploy
301+
302+
```bash
303+
curl --silent -O -L https://keploy.io/install.sh && source install.sh --oss
304+
```
305+
306+
🎉 You have successfully set up **Keploy OSS on Windows** using **Docker**.
307+
308+
<StartKeployDocker />
309+
</TabItem>
310+
</Tabs>
311+
</TabItem>
312+
</Tabs>

0 commit comments

Comments
 (0)