Skip to content

Commit f0c2925

Browse files
committed
feat(docs): add redirect-only 404 page for docs
Signed-off-by: Akella Srinivas <alsrinivas.346@gmail.com>
1 parent 2ce1bcb commit f0c2925

17 files changed

+572
-279
lines changed

docusaurus.config.js

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,7 @@ module.exports = {
1717
favicon: "img/favicon.png",
1818
organizationName: "keploy", // Usually your GitHub org/user name.
1919
projectName: "docs", // Usually your repo name.
20-
markdown: {
21-
hooks: {
22-
onBrokenMarkdownLinks: "warn",
23-
},
24-
},
20+
onBrokenMarkdownLinks: "warn",
2521
plugins: [
2622
function preloadFontPlugin() {
2723
return {

src/components/Community.js

Lines changed: 15 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,13 @@
11
import React from "react";
2-
import { FaYoutube, FaGithub, FaSlack, FaRss, FaArrowRight } from "react-icons/fa";
3-
import { FaXTwitter } from "react-icons/fa6";
4-
import { HiOutlineNewspaper } from "react-icons/hi2";
2+
import {
3+
FaYoutube,
4+
FaGithub,
5+
FaSlack,
6+
FaRss,
7+
FaArrowRight,
8+
} from "react-icons/fa";
9+
import {FaXTwitter} from "react-icons/fa6";
10+
import {HiOutlineNewspaper} from "react-icons/hi2";
511

612
const communityLinks = [
713
{
@@ -66,19 +72,20 @@ export const Community = () => {
6672
Connect with the Keploy community
6773
</h2>
6874
<p className="mx-auto max-w-2xl text-base text-gray-600 dark:text-gray-400">
69-
Get help, learn best practices, and stay updated—through the channels you already use.
75+
Get help, learn best practices, and stay updated—through the channels
76+
you already use.
7077
</p>
7178
</div>
7279

7380
{/* Community Links Grid */}
7481
<div className="mb-8 grid gap-4 sm:grid-cols-2 lg:grid-cols-3">
75-
{communityLinks.map(({ title, desc, href, Icon, iconColor, bgColor }) => (
82+
{communityLinks.map(({title, desc, href, Icon, iconColor, bgColor}) => (
7683
<a
7784
key={title}
7885
href={href}
7986
target="_blank"
8087
rel="noopener noreferrer"
81-
className="group flex items-start gap-4 rounded-xl border border-gray-200 bg-white p-4 transition-all duration-200 hover:border-orange-300 hover:shadow-md hover:no-underline dark:border-gray-700 dark:bg-gray-800/50 dark:hover:border-orange-500/50"
88+
className="group flex items-start gap-4 rounded-xl border border-gray-200 bg-white p-4 transition-all duration-200 hover:border-orange-300 hover:no-underline hover:shadow-md dark:border-gray-700 dark:bg-gray-800/50 dark:hover:border-orange-500/50"
8289
>
8390
<div
8491
className={`flex h-11 w-11 flex-shrink-0 items-center justify-center rounded-xl ${bgColor}`}
@@ -108,7 +115,8 @@ export const Community = () => {
108115
Want to see a demo of Keploy Enterprise?
109116
</h3>
110117
<p className="text-sm text-gray-600 dark:text-gray-400">
111-
Share your use-case, workflow—and we'll help with any resources you need.
118+
Share your use-case, workflow—and we'll help with any resources
119+
you need.
112120
</p>
113121
</div>
114122
<a

src/components/DocHeaderChips.js

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import React from 'react';
1+
import React from "react";
22

33
/**
44
* DocHeaderChips - Minimal metadata strip for doc pages
@@ -17,26 +17,26 @@ import React from 'react';
1717

1818
const tierStyles = {
1919
oss: {
20-
label: 'Open Source',
21-
color: '#059669',
22-
bg: 'rgba(16, 185, 129, 0.08)',
23-
dotColor: '#10b981',
20+
label: "Open Source",
21+
color: "#059669",
22+
bg: "rgba(16, 185, 129, 0.08)",
23+
dotColor: "#10b981",
2424
},
2525
enterprise: {
26-
label: 'Enterprise',
27-
color: '#7c3aed',
28-
bg: 'rgba(139, 92, 246, 0.08)',
29-
dotColor: '#8b5cf6',
26+
label: "Enterprise",
27+
color: "#7c3aed",
28+
bg: "rgba(139, 92, 246, 0.08)",
29+
dotColor: "#8b5cf6",
3030
},
3131
cloud: {
32-
label: 'Cloud',
33-
color: '#2563eb',
34-
bg: 'rgba(59, 130, 246, 0.08)',
35-
dotColor: '#3b82f6',
32+
label: "Cloud",
33+
color: "#2563eb",
34+
bg: "rgba(59, 130, 246, 0.08)",
35+
dotColor: "#3b82f6",
3636
},
3737
};
3838

39-
export default function DocHeaderChips({ tier, version, availability = [] }) {
39+
export default function DocHeaderChips({tier, version, availability = []}) {
4040
const hasTier = tier && tierStyles[tier.toLowerCase()];
4141
const hasVersion = version && version.trim();
4242
const hasAvailability = availability && availability.length > 0;
@@ -49,19 +49,20 @@ export default function DocHeaderChips({ tier, version, availability = [] }) {
4949
return (
5050
<div className="doc-meta">
5151
{tierConfig && (
52-
<span className="doc-meta__tier" style={{ color: tierConfig.color }}>
53-
<span className="doc-meta__dot" style={{ background: tierConfig.dotColor }} />
52+
<span className="doc-meta__tier" style={{color: tierConfig.color}}>
53+
<span
54+
className="doc-meta__dot"
55+
style={{background: tierConfig.dotColor}}
56+
/>
5457
{tierConfig.label}
5558
</span>
5659
)}
5760
{hasVersion && (
58-
<span className="doc-meta__version">
59-
v{version.replace(/^v/i, '')}
60-
</span>
61+
<span className="doc-meta__version">v{version.replace(/^v/i, "")}</span>
6162
)}
6263
{hasAvailability && (
6364
<span className="doc-meta__availability">
64-
{availability.join(' · ')}
65+
{availability.join(" · ")}
6566
</span>
6667
)}
6768
<style>{`
@@ -115,4 +116,3 @@ export default function DocHeaderChips({ tier, version, availability = [] }) {
115116
</div>
116117
);
117118
}
118-

src/components/EcosystemSupport.js

Lines changed: 22 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ export const EcosystemSupport = () => {
3030
{/* Callout Banners */}
3131
<div className="mx-auto grid max-w-6xl grid-cols-1 gap-6 md:grid-cols-12">
3232
{/* OSS Sponsorship Banner */}
33-
<div className="group relative overflow-hidden rounded-2xl border border-amber-200 bg-gradient-to-br from-amber-50 to-orange-50 p-6 md:col-span-12 dark:border-amber-900/50 dark:from-gray-900 dark:to-amber-950/20">
33+
<div className="group relative overflow-hidden rounded-2xl border border-amber-200 bg-gradient-to-br from-amber-50 to-orange-50 p-6 dark:border-amber-900/50 dark:from-gray-900 dark:to-amber-950/20 md:col-span-12">
3434
{/* Decorative star pattern */}
3535
<div className="absolute -right-4 -top-4 text-amber-200/50 dark:text-amber-700/20">
3636
<FaStar className="h-24 w-24" />
@@ -46,30 +46,41 @@ export const EcosystemSupport = () => {
4646
Keploy Open Source Sponsorship
4747
</h3>
4848
<p className="mb-4 text-sm text-gray-700 dark:text-gray-300">
49-
Selected projects receive <strong>free access</strong> to Keploy’s suite of tools—starting with our <strong>AI-based test generator</strong>—while helping us showcase how AI-powered test generation works in real-world open source development.
49+
Selected projects receive <strong>free access</strong> to Keploy’s
50+
suite of tools—starting with our{" "}
51+
<strong>AI-based test generator</strong>—while helping us showcase
52+
how AI-powered test generation works in real-world open source
53+
development.
5054
</p>
5155

5256
<div className="mb-4 rounded-xl border border-amber-200/70 bg-white/70 p-4 text-sm text-gray-700 dark:border-amber-900/40 dark:bg-gray-900/30 dark:text-gray-300">
53-
<div className="mb-2 text-xs font-semibold uppercase tracking-wider text-amber-700 dark:text-amber-300">Requirements</div>
57+
<div className="mb-2 text-xs font-semibold uppercase tracking-wider text-amber-700 dark:text-amber-300">
58+
Requirements
59+
</div>
5460
<ul className="list-disc space-y-1 pl-5">
5561
<li>Public open source repository</li>
5662
<li>Valid OSS license (MIT or equivalent)</li>
5763
<li>
58-
Consent to being featured in Keploy’s OSS showcase (marketing, website features, and links to public PRs using Keploy)
64+
Consent to being featured in Keploy’s OSS showcase (marketing,
65+
website features, and links to public PRs using Keploy)
5966
</li>
6067
</ul>
6168
</div>
6269

6370
<div className="mb-5 rounded-xl border border-amber-200/70 bg-white/70 p-4 text-sm text-gray-700 dark:border-amber-900/40 dark:bg-gray-900/30 dark:text-gray-300">
64-
<div className="mb-2 text-xs font-semibold uppercase tracking-wider text-amber-700 dark:text-amber-300">Selection process</div>
71+
<div className="mb-2 text-xs font-semibold uppercase tracking-wider text-amber-700 dark:text-amber-300">
72+
Selection process
73+
</div>
6574
<p className="mb-0">
66-
This is an application-based program. Submitting an application does not guarantee acceptance. We review applications on a rolling basis and will reach out to selected projects directly.
75+
This is an application-based program. Submitting an application
76+
does not guarantee acceptance. We review applications on a
77+
rolling basis and will reach out to selected projects directly.
6778
</p>
6879
</div>
6980

7081
<Link
7182
to="https://forms.gle/example-sponsorship"
72-
className="inline-flex w-full items-center justify-center gap-2 rounded-xl bg-gradient-to-r from-amber-500 to-orange-500 px-5 py-2.5 text-sm font-semibold text-white shadow-lg shadow-amber-500/25 transition-all duration-200 hover:from-amber-600 hover:to-orange-600 hover:text-white hover:shadow-amber-500/40 hover:no-underline"
83+
className="inline-flex w-full items-center justify-center gap-2 rounded-xl bg-gradient-to-r from-amber-500 to-orange-500 px-5 py-2.5 text-sm font-semibold text-white shadow-lg shadow-amber-500/25 transition-all duration-200 hover:from-amber-600 hover:to-orange-600 hover:text-white hover:no-underline hover:shadow-amber-500/40"
7384
>
7485
Apply for sponsorship
7586
</Link>
@@ -80,7 +91,7 @@ export const EcosystemSupport = () => {
8091
</div>
8192

8293
{/* Share Your Story Banner */}
83-
<div className="group relative h-full overflow-hidden rounded-2xl border border-purple-200 bg-gradient-to-br from-purple-50 to-indigo-50 p-6 md:col-span-6 dark:border-purple-900/50 dark:from-gray-900 dark:to-purple-950/20">
94+
<div className="group relative h-full overflow-hidden rounded-2xl border border-purple-200 bg-gradient-to-br from-purple-50 to-indigo-50 p-6 dark:border-purple-900/50 dark:from-gray-900 dark:to-purple-950/20 md:col-span-6">
8495
{/* Decorative pen pattern */}
8596
<div className="absolute -right-4 -top-4 text-purple-200/50 dark:text-purple-700/20">
8697
<FaPen className="h-24 w-24" />
@@ -117,7 +128,7 @@ export const EcosystemSupport = () => {
117128
</div>
118129

119130
{/* GSoC Banner */}
120-
<div className="group relative h-full overflow-hidden rounded-2xl border border-blue-200 bg-gradient-to-br from-blue-50 to-cyan-50 p-6 md:col-span-6 dark:border-blue-900/50 dark:from-gray-900 dark:to-blue-950/20">
131+
<div className="group relative h-full overflow-hidden rounded-2xl border border-blue-200 bg-gradient-to-br from-blue-50 to-cyan-50 p-6 dark:border-blue-900/50 dark:from-gray-900 dark:to-blue-950/20 md:col-span-6">
121132
{/* Decorative cap pattern */}
122133
<div className="absolute -right-4 -top-4 text-blue-200/50 dark:text-blue-700/20">
123134
<FaGoogle className="h-24 w-24" />
@@ -137,7 +148,8 @@ export const EcosystemSupport = () => {
137148
Contribute and get sponsored.
138149
</p>
139150
<p className="mb-5 text-sm text-gray-600 dark:text-gray-400">
140-
Keploy participates in GSoC. Explore this year’s project ideas and contribute to core testing workflows.
151+
Keploy participates in GSoC. Explore this year’s project ideas and
152+
contribute to core testing workflows.
141153
</p>
142154

143155
{/* CTA */}
@@ -156,4 +168,3 @@ export const EcosystemSupport = () => {
156168
};
157169

158170
export default EcosystemSupport;
159-

0 commit comments

Comments
 (0)