PageSourceSearch

https://saad-qadri.netlify.app/js/chatbot-data.js

js saad-qadri.netlify.app collected 2026-10-03 11:21:54 UTC 47,574 bytes, 861 lines download raw bytes

1/**
2 * chatbot-data.js — Knowledge base for Ask Saad chatbot
3 * Dual-language (Hinglish + English) conversational responses.
4 * Language auto-detected from user input.
5 *
6 * © 2026 Qadri Saad. All rights reserved.
7 */
8
9// ─── Hindi/Hinglish indicator words ───────────────────────────
10const HINGLISH_WORDS = [
11  'kon', 'kaun', 'hai', 'ho', 'kya', 'kaise', 'kaisa', 'kaisi',
12  'bata', 'batao', 'bolo', 'suno', 'sunao', 'samjho',
13  'se', 'ka', 'ki', 'ke', 'ko', 'mein', 'pe', 'par',
14  'nahi', 'nhi', 'haan', 'ye', 'yeh', 'wo', 'woh',
15  'mera', 'mere', 'meri', 'tera', 'tere', 'teri',
16  'kaam', 'karna', 'karta', 'karte', 'karti',
17  'paise', 'paisa', 'kitna', 'kitne', 'kitni',
18  'aata', 'aati', 'seekha', 'padha', 'dekha',
19  'kab', 'kahan', 'kaha', 'kyun', 'kyu',
20  'accha', 'bura', 'sahi', 'galat',
21  'sunao', 'batao', 'dikhao', 'chalo',
22  'hai?', 'ho?', 'kya?', 'kaise?',
23  'hain', 'tha', 'thi', 'the',
24  'rehta', 'rehti', 'raha', 'rahi',
25  'lagta', 'lagti', 'laga', ' lagi',
26  'wala', 'wali', 'wale',
27  'hai na', 'nahi na', 'right',
28];
29
30function isHinglish(input) {
31  const lower = input.toLowerCase();
32  for (const word of HINGLISH_WORDS) {
33    if (lower.includes(word)) return true;
34  }
35  return false;
36}
37
38// ─── Knowledge Base ───────────────────────────────────────────
39export const KNOWLEDGE_BASE = {
40
41  // ─── IDENTITY ─────────────────────────────────────────────
42  identity: {
43    keywords: ['who', 'saad', 'qadri', 'name', 'naam', 'kaun', 'kon', 'introduce', 'intro', 'yourself', 'apna', 'about me', 'bata', 'batao', 'tell me', 'person', 'ladka', 'developer'],
44    hinglish: `Qadri Saad ek Full Stack Developer hai jo Mumbai, India mein rehta hai.
45
46Woh responsive websites, web apps, CMS dashboards, CRM systems, ERP solutions aur RBAC platforms banata hai. Freelancing 2022 se kar raha hai aur abhi tak 25+ projects deliver kar chuka hai with 20+ happy clients.
47
48Agar tumhe koi website ya web app banwana hai toh Saad se baat kar sakte ho!`,
49    english: `Qadri Saad is a Full Stack Developer based in Mumbai, India.
50
51He builds responsive websites, web apps, CMS dashboards, CRM systems, ERP solutions, and RBAC platforms. He's been freelancing since 2022 and has delivered 25+ projects with 20+ happy clients.
52
53If you need a website or web app built, Saad is the guy to talk to!`
54  },
55
56  // ─── SKILLS ───────────────────────────────────────────────
57  skills: {
58    keywords: ['skill', 'skills', 'tech', 'stack', 'technologies', 'technology', 'kaam', 'kya', 'aata', 'aati', 'padha', 'seekha', 'learn', 'know', 'knows', 'programming', 'language', 'framework', 'tools', 'kya karta', 'kya aata'],
59    hinglish: `Saad ne bahut si cheezein seekhi hain:
60
61Frontend mein React, Next.js, Vue, HTML5, SCSS, CSS3, Tailwind aur Bootstrap aata hai.
62Backend mein Node.js, Express, PHP, Laravel aur REST APIs pe kaam kiya hai.
63Database mein MySQL, MongoDB aur Firebase use karta hai.
64Aur tools mein Git, Docker, VS Code, Cloudinary, Netlify aur Figma use karta hai.
65
66Plus GSAP animations, SEO, RBAC aur JWT Auth bhi aata hai.`,
67    english: `Saad has a solid tech stack across the board:
68
69On the frontend, he works with React, Next.js, Vue, HTML5, SCSS, CSS3, Tailwind, and Bootstrap.
70For backend, he's experienced with Node.js, Express, PHP, Laravel, and REST APIs.
71Databases include MySQL, MongoDB, and Firebase.
72Tools: Git, Docker, VS Code, Cloudinary, Netlify, and Figma.
73
74He also knows GSAP animations, SEO, RBAC, and JWT Auth.`
75  },
76
77  // ─── PROJECTS (now dynamic — handled in chatbot.js) ────────
78  // Static fallback only if no dynamic data loaded:
79  _projects_fallback: {
80    keywords: ['project fallback'],
81    hinglish: `Projects load ho rahe hain...`,
82    english: `Loading projects...`
83  },
84
85  // ─── SERVICES ─────────────────────────────────────────────
86  services: {
87    keywords: ['service', 'services', 'offer', 'provide', 'deta', 'deti', 'help', 'kar sakta', 'kar sakte', 'do for', 'can you', 'kya karta', 'kya karte', 'kya kar sakta', 'kya dete'],
88    hinglish: `Saad yeh sab services deta hai:
89
90Responsive Websites — Modern aur mobile-first design ke saath.
91React / Next.js Apps — SPAs, dashboards, web apps.
92REST APIs — Node.js, PHP, Laravel backends.
93Database Design — MySQL, MongoDB, Firebase.
94RBAC & Auth Systems — JWT, OAuth, role-based access.
95CMS Dashboards — Custom admin panels.
96SEO Optimization — On-page, performance tuning.
97
98Basically, koi bhi digital product banwana ho toh Saad se baat karo!`,
99    english: `Saad offers these services:
100
101Responsive Websites — Modern, mobile-first designs.
102React / Next.js Apps — SPAs, dashboards, web applications.
103REST APIs — Node.js, PHP, Laravel backends.
104Database Design — MySQL, MongoDB, Firebase.
105RBAC & Auth Systems — JWT, OAuth, role-based access.
106CMS Dashboards — Custom admin panels.
107SEO Optimization — On-page, performance tuning.
108
109Basically, if you need any digital product built, Saad's your guy!`
110  },
111
112  // ─── EXPERIENCE ───────────────────────────────────────────
113  experience: {
114    keywords: ['experience', 'exp', 'kaam kiya', 'job', 'career', 'journey', 'freelance', 'kitna', 'years', 'saal', 'time', 'kab se', 'kitne saal', 'kab se kar raha'],
115    hinglish: `Saad 2022 se freelancing kar raha hai aur abhi tak 25+ websites aur web apps bana chuka hai.
116
117Woh CMS, CRM, ERP solutions deliver kar chuka hai across India. React aur Node.js mein specialize karta hai.
118
119Uska client satisfaction rate 100% hai, average delivery 2 weeks mein hoti hai, aur 80%+ clients wapas aate hain unke paas.`,
120    english: `Saad has been freelancing since 2022 and has built 25+ websites and web apps so far.
121
122He's delivered CMS, CRM, and ERP solutions across India, specializing in React and Node.js.
123
124His client satisfaction rate is 100%, average delivery is within 2 weeks, and over 80% of clients come back for more work.`
125  },
126
127  // ─── EDUCATION ────────────────────────────────────────────
128  education: {
129    keywords: ['education', 'study', 'padhai', 'degree', 'university', 'college', 'sc
129hool', 'qualification', 'course', 'certification', 'certificate', 'padha hai', 'degree hai'],
130    hinglish: `Saad ne Mumbai University se B.Sc. Computer Science kiya hai.
131
132Uske certifications hain — Full Stack Web Development, React & Next.js Mastery, aur Database Design & Management.`,
133    english: `Saad holds a B.Sc. in Computer Science from the University of Mumbai.
134
135His certifications include Full Stack Web Development, React & Next.js Mastery, and Database Design & Management.`
136  },
137
138  // ─── CONTACT ──────────────────────────────────────────────
139  contact: {
140    keywords: ['contact', 'reach', 'email', 'phone', 'number', 'mail', 'whatsapp', 'call', 'message', 'social', 'linkedin', 'github', 'connect', 'baat', 'reach out', 'kaise mile', 'kaise baat', 'number kya'],
141    hinglish: `Saad se baat karne ke liye:
142
143Email — [email protected]
144Phone — +91 99873 06925
145WhatsApp — wa.me/919987306925
146
147Social Links:
148GitHub — github.com/Armaan-096
149LinkedIn — linkedin.com/in/armaan-qadri
150
151Ya Contact page pe jaake seedha message bhej do!`,
152    english: `To reach Saad:
153
154Email — [email protected]
155Phone — +91 99873 06925
156WhatsApp — wa.me/919987306925
157
158Social Links:
159GitHub — github.com/Armaan-096
160LinkedIn — linkedin.com/in/armaan-qadri
161
162Or just visit the Contact page and send a direct message!`
163  },
164
165  // ─── HIRE / PRICING ───────────────────────────────────────
166  hire: {
167    keywords: ['hire', 'price', 'pricing', 'cost', 'rate', 'budget', 'kitna', 'charge', 'paisa', 'paise', 'fees', 'payment', 'available', 'free', 'busy', 'project start', 'commission', 'kitna lagta', 'kitne mein', 'rate kya'],
168    hinglish: `Haan, Saad abhi available hai naye projects ke liye!
169
170Pricing aisi hai:
171Chhoti website (landing/5-page) — ₹15K se ₹30K
172Web application — ₹30K se ₹80K
173CMS Dashboard — ₹40K se ₹1L
174Full Stack App — ₹80K se ₹2.5L
175
176Zyadatar projects 1-2 weeks mein deliver ho jaate hain.
177
178Process simple hai — requirements discuss karo, quote mil jaega, development hoti hai with updates, aur phir delivery aur support.
179
180Email karo: [email protected] | Call: +91 99873 06925`,
181    english: `Yes, Saad is currently available for new projects!
182
183Here's the pricing:
184Small website (landing/5-page) — ₹15K to ₹30K
185Web application — ₹30K to ₹80K
186CMS Dashboard — ₹40K to ₹1L
187Full Stack App — ₹80K to ₹2.5L
188
189Most projects are delivered within 1-2 weeks.
190
191The process is simple — discuss requirements, get a quote, development with updates, then delivery and support.
192
193Email: [email protected] | Call: +91 99873 06925`
194  },
195
196  // ─── LOCATION ─────────────────────────────────────────────
197  location: {
198    keywords: ['location', 'where', 'kahan', 'kaha', 'rehta', 'based', 'city', 'country', 'address', 'place', 'mumbai', 'india', 'kahan rehta'],
199    hinglish: `Saad Mumbai, India mein rehta hai.
200Lekin woh duniya bhar mein remote kaam karne ke liye available hai!`,
201    english: `Saad is based in Mumbai, India.
202But he's available for remote work worldwide!`
203  },
204
205  // ─── FRONTEND ─────────────────────────────────────────────
206  frontend: {
207    keywords: ['frontend', 'front end', 'front-end', 'react', 'nextjs', 'next js', 'vue', 'html', 'css', 'scss', 'tailwind', 'bootstrap', 'ui', 'ux', 'design'],
208    hinglish: `Saad ka frontend game strong hai:
209
210Frameworks — React, Next.js, Vue
211Styling — SCSS, CSS3, Tailwind, Bootstrap
212Animation — GSAP (jaise yeh portfolio hai!)
213Markup — HTML5, Semantic HTML
214
215Responsive design aur cross-browser compatibility bhi aati hai.`,
216    english: `Saad's frontend game is strong:
217
218Frameworks — React, Next.js, Vue
219Styling — SCSS, CSS3, Tailwind, Bootstrap
220Animation — GSAP (like this portfolio!)
221Markup — HTML5, Semantic HTML
222
223He also handles responsive design and cross-browser compatibility.`
224  },
225
226  // ─── BACKEND ──────────────────────────────────────────────
227  backend: {
228    keywords: ['backend', 'back end', 'back-end', 'node', 'nodejs', 'express', 'php', 'laravel', 'api', 'server', 'database', 'mysql', 'mongodb', 'firebase'],
229    hinglish: `Saad backend mein bhi kaafi experienced hai:
230
231Runtime — Node.js
232Frameworks — Express, PHP, Laravel
233Databases — MySQL, MongoDB, Firebase
234Auth — JWT, OAuth, RBAC
235APIs — REST API design aur development
236
237Cloudinary, file upload aur real-time data handling bhi aata hai.`,
238    english: `Saad is quite experienced on the backend too:
239
240Runtime — Node.js
241Frameworks — Express, PHP, Laravel
242Databases — MySQL, MongoDB, Firebase
243Auth — JWT, OAuth, RBAC
244APIs — REST API design and development
245
246He also handles Cloudinary, file uploads, and real-time data.`
247  },
248
249  // ─── CMS ──────────────────────────────────────────────────
250  cms: {
251    keywords: ['cms', 'dashboard', 'admin', 'panel', 'backend panel', 'content management', 'wordpress'],
252    hinglish: `Saad custom CMS dashboards banata hai with:
253
254Full CRUD operations
255User authentication aur RBAC
256Media upload (Cloudinary integration)
257Real-time data management
258Responsive admin panels
259
260Woh bhi is portfolio mein ek CMS hai at /cms — projects, services aur site content manage karne ke liye!`,
261    english: `Saad builds custom CMS dashboards with:
262
263Full CRUD operations
264User authentication and RBAC
265Media upload (Cloudinary integration)
266Real-time data management
267Responsive admin panels
268
269This very portfolio has a CMS at /cms for managing projects, services, and site content!`
270  },
271
272  // ─── FREELANCING ──────────────────────────────────────────
273  freelance: {
274    keywords: ['freelance', 'freelancing', 'remote', 'work from', 'wfh', 'kaam from home', 'client', 'contract'],
275    hinglish: `Saad 2022 se freelancing kar raha hai aur India bhar mein clients ke saath remote kaam karta hai.
276
277Uska kaam aisa hai — clear communication via WhatsApp/Email, regular progress updates, clean aur documented code, aur post-delivery support bhi milta hai.
278
279Interested ho? Email karo → [email protected]`,
280    english: `Saad has been freelancing since 2022, working remotely with clients across India.
281
282His work style — clear communication via WhatsApp/Email, regular progress updates, clean documented code, and post-delivery support.
283
284Interested? Drop an email → [email protected]`
285  },
286
287  // ─── PORTFOLIO / WEBSITE ──────────────────────────────────
288  portfolio: {
289    keywords: ['portfolio', 'website', 'site', 'this site', 'yeh', 'website kaise', 'kaise banaya', 'how built', 'tech stack', 'built with', 'yeh site'],
290    hinglish: `Yeh portfolio website Saad ne khud banaya hai!
291
292Banaya hai Vanilla JavaScript (ES6+), HTML5, SCSS/CSS3, GSAP animations se. Backend ke liye Cloudinary aur Netlify use hota hai.
293
294Isme SPA Router hai (page reload nahi hota), CMS admin panel hai, yeh chatbot hai (haan, main bhi Saad ka bana hua hun!), responsive bento grid layout hai, aur dark theme with neon green accents hai.`,
295    english: `Saad built this portfolio website himself!
296
297It's made with Vanilla JavaScript (ES6+), HTML5, SCSS/CSS3, and GSAP animations. Cloudinary and Netlify handle the backend.
298
299It features an SPA Router (no page reloads), a CMS admin panel, this chatbot (yes, I was built by Saad too!), a responsive bento grid layout, and a dark theme with neon green accents.`
300  },
301
302  // ─── REACT / NEXT.JS ──────────────────────────────────────
303  react: {
304    keywords: ['react', 'nextjs', 'next js', 'reactjs', 'react js', 'hooks', 'components', 'jsx', 'useState', 'useEffect'],
305    hinglish: `Saad React aur Next.js mein kaafi achha hai:
306
307Woh banata hai — Single Page Applications (SPAs), Server-Side Rendered apps (SSR), dashboard interfaces, dynamic forms aur CRUD apps, aur REST API integrations.
308
309Tech: React, Next.js, React Router, Context API, Custom Hooks`,
310    english: `Saad is quite skilled in React and Next.js:
311
312He builds — Single Page Applications (SPAs), Server-Side Rendered apps (SSR), dashboard interfaces, dynamic forms and CRUD apps, and REST API integrations.
313
314Tech: React, Next.js, React Router, Context API, Custom Hooks`
315  },
316
317  // ─── NODE.JS ──────────────────────────────────────────────
318  nodejs: {
319    keywords: ['node', 'nodejs', 'node js', 'express', 'expressjs', 'express js', 'npm', 'backend api'],
320    hinglish: `Saad Node.js aur Express mein kaam karta hai:
321
322REST APIs with Express.js, Authentication systems (JWT), File upload APIs (Cloudinary), CRUD backends, aur Middleware aur route handling.
323
324Packages jo use karta hai — Express, Mongoose, bcrypt, jsonwebtoken, multer, cors`,
325    english: `Saad works with Node.js and Express:
326
327REST APIs with Express.js, Authentication systems (JWT), File upload APIs (Cloudinary), CRUD backends, and Middleware/route handling.
328
329Packages he uses — Express, Mongoose, bcrypt, jsonwebtoken, multer, cors`
330  },
331
332  // ─── PHP / LARAVEL ────────────────────────────────────────
333  php: {
334    keywords: ['php', 'laravel', 'laravel php', 'mysql php'],
335    hinglish: `Saad ko PHP aur Laravel bhi aata hai:
336
337PHP core development, Laravel framework, MySQL database integration, REST API development, aur Server-side rendering.`,
338    english: `Saad also knows PHP and Laravel:
339
340PHP core development, Laravel framework, MySQL database integration, REST API development, and Server-side rendering.`
341  },
342
343  // ─── DATABASE ─────────────────────────────────────────────
344  database: {
345    keywords: ['database', 'db', 'mysql', 'mongodb', 'firebase', 'sql', 'nosql', 'data'],
346    hinglish: `Saad databases mein experienced hai:
347
348MySQL — Relational databases, queries, optimization.
349MongoDB — NoSQL, document-based storage.
350Firebase — Real-time database, authentication, hosting.
351
352Woh schemas design karta hai, queries likhta hai, aur performance optimize karta hai.`,
353    english: `Saad is experienced with databases:
354
355MySQL — Relational databases, queries, optimization.
356MongoDB — NoSQL, document-based storage.
357Firebase — Real-time database, authentication, hosting.
358
359He designs schemas, writes queries, and optimizes performance.`
360  },
361
362  // ─── SEO ──────────────────────────────────────────────────
363  seo: {
364    keywords: ['seo', 'search engine', 'ranking', 'google', 'optimization', 'meta', 'performance', 'speed'],
365    hinglish: `Saad websites ko SEO ke liye optimize karta hai:
366
367Semantic HTML structure, Meta tags aur Open Graph, Core Web Vitals, Image optimization, Lazy loading, Structured data (JSON-LD), aur Mobile-first responsive design.`,
368    english: `Saad optimizes websites for SEO:
369
370Semantic HTML structure, Meta tags and Open Graph, Core Web Vitals, Image optimization, Lazy loading, Structured data (JSON-LD), and Mobile-first responsive design.`
371  },
372
373  // ─── RBAC / AUTH ──────────────────────────────────────────
374  rbac: {
375    keywords: ['rbac', 'auth', 'authentication', 'authorization', 'role', 'permission', 'login', 'jwt', 'oauth', 'security'],
376    hinglish: `Saad RBAC aur Auth systems banata hai:
377
378JWT Token Authentication, Role aur Permission management, Protected routes aur middleware, Login/Register flows, aur Session management.
379
380Yeh CRM systems, CMS dashboards aur admin panels mein use hota hai.`,
381    english: `Saad builds RBAC and Auth systems:
382
383JWT Token Authentication, Role and Permission management, Protected routes and middleware, Login/Register flows, and Session management.
384
385These are used in CRM systems, CMS dashboards, and admin panels.`
386  },
387
388  // ─── AVAILABILITY ─────────────────────────────────────────
389  available: {
390    keywords: ['available', 'free', 'busy', 'schedule', 'time', 'kab', 'start', 'shuru', 'join', 'abhi free', 'abhi available'],
391    hinglish: `Haan, Saad abhi available hai!
392
393Woh naye freelance projects, full-time opportunities, aur collaborations ke liye ready hai.
394
395Baat karo → [email protected]`,
396    english: `Yes, Saad is currently available!
397
398He's ready for new freelance projects, full-time opportunities, and collaborations.
399
400Reach out → [email protected]`
401  },
402
403  // ─── BUDGET / RATES ───────────────────────────────────────
404  budget: {
405    keywords: ['budget', 'rate', 'rates', 'price list', 'cost', 'estimate', 'quote', 'sasta', 'mehenga', 'affordable', 'cheap', 'kitna paisa', 'kitne mein'],
406    hinglish: `Rate card aisi hai:
407
408Chhoti website (landing/5-page) — ₹15K to ₹30K
409Web application — ₹30K to ₹80K
410CMS Dashboard — ₹40K to ₹1L
411Full Stack App — ₹80K to ₹2.5L
412Monthly retainer — ₹15K to ₹30K/month
413
414Final price scope aur complexity pe depend karta hai. Free consultation ke liye email karo → [email protected]`,
415    english: `Here's the rate card:
416
417Small website (landing/5-page) — ₹15K to ₹30K
418Web application — ₹30K to ₹80K
419CMS Dashboard — ₹40K to ₹1L
420Full Stack App — ₹80K to ₹2.5L
421Monthly retainer — ₹15K to ₹30K/month
422
423Final price depends on scope and complexity. Free consultation → [email protected]`
424  },
425
426  // ─── DELIVERY TIME ────────────────────────────────────────
427  timeline: {
428    keywords: ['time', 'timeline', 'deadline', 'kitna time', 'days', 'weeks', 'delivery', 'deliver', 'jaldi', 'fast', 'quick', 'kitne din', 'kitne week'],
429    hinglish: `Delivery timeline aisi hai:
430
431Landing page — 2-3 din mein
4325-page website — 1 week mein
433Web application — 2-3 weeks mein
434CMS Dashboard — 2-4 weeks mein
435Full Stack App — 3-6 weeks mein
436
437Quality compromise kiye bina fast delivery!`,
438    english: `Delivery timeline:
439
440Landing page — 2-3 days
4415-page website — 1 week
442Web application — 2-3 weeks
443CMS Dashboard — 2-4 weeks
444Full Stack App — 3-6 weeks
445
446Fast delivery without compromising quality!`
447  },
448
449  // ─── PROCESS ──────────────────────────────────────────────
450  process: {
451    keywords: ['process', 'how', 'kaise', 'kya hota', 'steps', 'workflow', 'kaam kaise', 'procedure', 'kaise hota'],
452    hinglish: `Saad ka kaam aisa hota hai:
453
4541. Discovery — Tumhrequirements samajhta hai.
4552. Planning — Wireframes, tech stack, timeline decide hota hai.
4563. Design — Tumhare brand colors ke saath UI/UX.
4574. Development — Clean aur modular code.
4585. Testing — Cross-browser, responsive check.
4596. Deployment — Netlify/Vercel pe live.
4607. Support — Launch ke baad bhi support milta hai.`,
461    english: `Here's how Saad works:
462
4631. Discovery — Understands your requirements.
4642. Planning — Wireframes, tech stack, timeline.
4653. Design — UI/UX with your brand colors.
4664. Development — Clean, modular code.
4675. Testing — Cross-browser, responsive.
4686. Deployment — Live on Netlify/Vercel.
4697. Support — Post-launch assistance.`
470  },
471
472  // ─── WHY SAAD ─────────────────────────────────────────────
473  why: {
474    keywords: ['why', 'kyun', 'kyu', 'reason', 'benefit', 'choose', 'hire you', 'kya milega', 'advantage', 'kyu chunu', 'kyu karu'],
475    hinglish: `Saad ko kyun choose karna chahiye:
476
477100% client satisfaction rate
478Clean aur maintainable code
479Fast delivery (average 2 weeks)
480Mobile-first responsive design
481Day one se SEO-optimized
482Post-launch support included
48380%+ repeat client rate
484Clear communication aur regular updates`,
485    english: `Why choose Saad:
486
487100% client satisfaction rate
488Clean, maintainable code
489Fast delivery (avg 2 weeks)
490Mobile-first responsive design
491SEO-optimized from day one
492Post-launch support included
49380%+ repeat client rate
494Clear communication and regular updates`
495  },
496
497  // ─── GREETINGS ────────────────────────────────────────────
498  greeting: {
499    keywords: ['hello', 'hi', 'hey', 'namaste', 'salaam', 'sup', 'good morning', 'good evening', 'good afternoon', 'how are you', 'kaise ho', 'kaisa hai', 'acha'],
500    hinglish: `Hey there!
501
502Main Saad ka AI assistant hun. Mujhse kuch bhi puchho:
503Saad ke skills aur experience ke baare mein,
504Projects aur portfolio,
505Services aur pricing,
506Ya kaise hire karein.
507
508Bas naturally likho — main samajh jaunga!`,
509    english: `Hey there!
510
511I'm Saad's AI assistant. Ask me anything about:
512Saad's skills and experience,
513Projects and portfolio,
514Services and pricing,
515Or how to hire him.
516
517Just type naturally — I'll figure it out!`
518  },
519
520  // ─── THANKS ───────────────────────────────────────────────
521  thanks: {
522    keywords: ['thanks', 'thank', 'shukriya', 'dhanyavad', 'appreciate', 'great', 'awesome', 'nice', 'achha'],
523    hinglish: `Koi baat nahi!
524
525Agar aur kuch puchna hai toh poochh lo. Ya seedha Saad se baat karo:
526Email: [email protected] | Phone: +91 99873 06925`,
527    english: `You're welcome!
528
529If you have more questions, just ask. Or reach out to Saad directly:
530Email: [email protected] | Phone: +91 99873 06925`
531  },
532
533  // ─── JOKES ────────────────────────────────────────────────
534  joke: {
535    keywords: ['joke', 'funny', 'mazak', 'maza', 'hasi', 'laugh', 'comedy', 'humor', 'jokes', 'mazaak', 'fun', 'hasao', 'suno'],
536    hinglish: () => {
537      const jokes = [
538        'Ek programmer ki biwi ne kaha: "Market jaake 1 dabba doodh lao, agar ande mile toh 6 le aana."\n→ Programmer 6 dabbe doodh le aaya.',
539        'Programmer se puncha: "Tumhara favourite language kaun sa hai?"\n→ "Syntax Error: Unexpected token \':\'"',
540        'Debugger ek hota hai jo bugs nikaalta hai.\n→ Lekin khud bugs create karne waala kaun hai? The Product Manager.',
541        'Ek programmer ne resume likha: "Mujhe 10 saal ka experience hai."\n→ Interviewer: "Kaisme?"\n→ "Pehle 5 saal 2 saal ka, phir 5 saal 3 saal ka."',
542        'Client: "Mujhe ek button chahiye jo sab kuch change kar de."\n→ Developer: "Yeh toh nuclear launch button hai."',
543        'QA Engineer ek baar ghar jaata hai, uski biwi bolti hai: "Fridge se doodh lao." Woh 5 minute baad aata hai aur bolta hai: "Mila nahi."',
544        'Scrum Master ek aisa insaan hai jo meetings organize karta hai taaki meetings ki meeting ho sake.',
545        'Code review mein senior ne likha: "Yeh code chalta hai?"\n→ Junior: "Haan sir, bas darr ke maare chalta hai."',
546        'Product Manager ne kaha: "Yeh feature 2 din mein ho jayega."\n→ Developer ne kaha: "Haan, par 2 kaun se din? Tuesday ya Thursday?"',
547        'DevOps engineer: "Server down hai."\n→ Developer: "Mere laptop pe toh chal raha hai."',
548        'Ek developer ne code likha jo 3 saal tak kisi ne touch nahi kiya.\n→ Jab touch kiya toh pata chala: yeh toh commented out tha.',
549        'CSS: "Main center kar raha hun."\nDeveloper: "Nahi kar raha."\nCSS: "Ab kar raha hun."\nDeveloper: "Ab bhi nahi."\nCSS: "Thoda aur wait kar... DONE!"\nDeveloper: "Ab left side pe hai."',
550        'Agar tumhe lagta hai ki tumhara code samajhna mushkil hai, toh tumhara code sahi hai. Tum khud bhi nahi samajh paooge.',
551        'Interviewer: "Aapka strongest skill kya hai?"\nCandidate: "Stack Overflow se copy-paste karna."',
552        'Ek intern ne poocha: "Sir, yeh code kaam kyun nahi kar raha?"\nSenior: "Kyunki tumne console.log nahi likha."',
553        'Frontend developer: "Design bilkul exact hai!"\nBackend developer: "Haan, par data kahan se aayega?"\nDBA: "Main toh chhup ke baitha hun."',
554        'Code ka documentation likhna is like gym jaane ka sochna — sab sochte hain, koi karta nahi.',
555        'Agar developer ka code pehli baar mein kaam kare, toh samjho kuch toh gadbad hai.',
556        'Lambda function ek aisa function hai jo apna naam bhi nahi jaanta.',
557        'Git blame lagao aur pata chalo ki kisne last time galti ki thi.\n→ Spoiler: tum khud.',
558        'Agar tumhara manager bol raha hai ki "yeh last minute change hai", toh woh jhooth bol raha hai.',
559        'Agar meeting mein koi bol raha hai "ye sirf 5 minute ka hai", toh woh 45 minute ka hai.',
560        'Designer: "Yeh mockup final hai."\n→ Client: "Haan, bas thoda sa color change karo."\n→ 20 changes later...',
561        'Sprint planning mein sab sochte hain ki kaam kitna hoga.\n→ Sprint ke end mein sab sochte hain ki kaam hua kyun nahi.',
562        'Agar developer bol raha hai ki "ye fix hai", toh ek aur bug bhi le aao.',
563        'Agar tumhara code documentation ke bina kaam kar raha hai, toh samjho ki kisi aur ki problem hai.',
564        'Product Owner: "Yeh feature toh bahut zaroori hai!"\n→ Developer: "Haan, par pehle existing bugs fix kar lein?"\n→ PO: "Nahi, pehle ye feature chahiye."',
565        'Standup meeting: 3 log bolte hain ki unka kaam ho raha hai, 1 bolta hai ki "ruk jaao abhi kar raha hun."',
566        'SEO expert ek aisa insaan hai jo Google se zyada Google ko samajhta hai.',
567        'Agar tumhari website page 2 pe hai, toh tum literally kisi ko nahi dikhte. Page 2 is the new hidden page.',
568        'Digital Marketer: "Humara ROI 200% hai!"\n→ Client: "Matlab?"\n→ DM: "Hum 1 rupya lagate hain aur 2 rupya ka kaam karte hain."',
569        'Social Media Manager ek aisa kaam hai jisme tumhe har minute phone dekhna hota hai — professionally.',
570        'Agar tumhara post viral ho gaya, toh samjho ki tumne kuch nahi kiya — logon ne khud kiya.',
571        'PPC (Pay Per Click) mein tum har click ke liye paise dete ho — chahe woh tumhara ho ya nahi.',
572        'Designer: "Yeh typography perfect hai!"\n→ Client: "Font thoda bada kar do."\n→ Designer internally dying.',
573        'CSS flexbox ek aisa concept hai jo samajh mein tab aata hai jab tum usse chhod dete ho.',
574        'UI/UX designer ek aisa insaan hai jo 5 minute mein 5 logo se poochhta hai ki "kaisa lag raha hai?"',
575        'Pixel perfect hone ka matlab hai ki tum obsessed ho — professionally.',
576        'Agar tumhara code pehli baar mein kaam kare, toh 3 baar check karo. Kuch toh gadbad hai.',
577        'Lambda function ek aisa function hai jo apna naam bhi nahi jaanta — anonymous hai bilkul.',
578      ];
579      if (!joke._used) joke._used = [];
580      const available = jokes.filter((_, i) => !joke._used.includes(i));
581      if (available.length === 0) joke._used = [];
582      const idx = jokes.indexOf(available[Math.floor(Math.random() * available.length)]);
583      joke._used.push(idx);
584      const followups = [
585        '\n\nAur sunao? "joke" type karo.',
586        '\n\nEk aur? "mazaak sunao" likho.',
587        '\n\nMaza aaya? "funny" likho aur sunao.',
588        '\n\nAur hai? "hasao" type karo.',
589        '\n\nBadhiya tha na? "joke" likho phir se.',
590        '\n\nAur batao? "comedy" type karo.',
591      ];
592      return jokes[idx] + followups[Math.floor(Math.random() * followups.length)];
593    },
594    english: () => {
595      const jokes = [
596        'A programmer\'s wife said: "Go to the store and get a gallon of milk. If they have eggs, get 6."\n→ He came back with 6 gallons of milk.',
597        'There are only 10 types of people in the world: those who understand binary, and those who don\'t.',
598        'Why do programmers prefer dark mode? Because light attracts bugs.',
599        'A SQL query walks into a bar, walks up to two tables and asks: "Can I join you?"',
600        'Why was the JavaScript developer sad? Because he didn\'t Node how to Express himself.',
601        'How many programmers does it take to change a light bulb? None — that\'s a hardware problem!',
602        'What\'s a programmer\'s favorite hangout place? Foo Bar.',
603        'A programmer died and God asked: "What do you want?"\n→ "An infinite loop with infinite memory."',
604        'Programmer to doctor: "Doctor, my code works perfectly, but when I add one more line, nothing works."\n→ Doctor: "You have a semicolon deficiency."',
605        'A QA engineer walks into a bar. Orders 1 beer. Orders 0 beers. Orders 99999999 beers. Orders -1 beers. Orders a lizard. Orders NULL beers. First real customer walks in and asks where the bathroom is. The bar bursts into flames.',
606        'Client: "I need a simple website."\n→ 6 months later: "Also add 20 more pages."',
607        'Project Manager: "This project is deadline-driven."\n→ Developer: "When is the deadline?"\n→ PM: "Tomorrow."',
608        'If your manager says "this is the last minute change", they are lying.',
609        'If someone in a meeting says "this will only take 5 minutes", it takes 45.',
610        'Designer: "This mockup is final."\n→ Client: "Sure, just change the color a bit."\n→ 20 changes later...',
611        'In sprint planning everyone thinks about how much work there is.\n→ At sprint end everyone wonders why the work didn\'t get done.',
612        'If a developer says "this is fixed", bring another bug too.',
613        'If your code works without documentation, someone else\'s problem.',
614        'Product Owner: "This feature is critical!"\n→ Developer: "Can we fix existing bugs first?"\n→ PO: "No, feature first."',
615        'Standup meeting: 3 people say their work is going well, 1 says "hold on, I\'m working on it."',
616        'SEO expert is someone who understands Google better than Google itself.',
617        'If your website is on page 2 of Google, you literally don\'t exist. Page 2 is the new hidden page.',
618        'Digital Marketer: "Our ROI is 200%!"\n→ Client: "What does that mean?"\n→ DM: "We spend 1 and earn 2."',
619        'Social Media Manager is a job where you have to check your phone every minute — professionally.',
620        'If your post went viral, you did nothing — people did it themselves.',
621        'PPC (Pay Per Click) means you pay for every click — whether it\'s yours or not.',
622        'Designer: "This typography is perfect!"\n→ Client: "Make the font a bit bigger."\n→ Designer internally dying.',
623        'CSS flexbox is something you only understand when you give up on it.',
624        'UI/UX designer is someone who asks 5 people in 5 minutes "how does it look?"',
625        'Being pixel perfect means you\'re obsessed — professionally.',
626        'If your code works on the first try, check it 3 times. Something is definitely wrong.',
627        'A Lambda function is a function that doesn\'t even know its own name — completely anonymous.',
628      ];
629      if (!joke._usedEn) joke._usedEn = [];
630      const available = jokes.filter((_, i) => !joke._usedEn.includes(i));
631      if (available.length === 0) joke._usedEn = [];
632      const idx = jokes.indexOf(available[Math.floor(Math.random() * available.length)]);
633      joke._usedEn.push(idx);
634      const followups = [
635        '\n\nWant another one? Type "joke".',
636        '\n\nOne more? Type "funny".',
637        '\n\nLiked it? Type "another joke".',
638        '\n\nMore where that came from — type "joke".',
639        '\n\nCracked you up? Type "comedy" for more.',
640        '\n\nNext joke? Just type "joke" again.',
641      ];
642      return jokes[idx] + followups[Math.floor(Math.random() * followups.length)];
643    }
644  },
645
646  // ─── FUN FACTS ─────────────────────────────────────────────
647  funfact: {
648    keywords: ['funfact', 'fun fact', 'fact', 'facts', 'did you know', 'pata hai', 'interesting', 'trivia', 'fact batao', 'kuch pata hai'],
649    hinglish: () => {
650      const facts = [
651        'Pehla computer bug ek actual insect tha — ek moth jo computer mein fas gayi thi 1947 mein Harvard mein.',
652        'JavaScript ka naam Java se liya gaya hai — sirf marketing ke liye. Dono languages ka koi connection nahi hai.',
653        'Duniya ka pehla website — info.cern.ch — abhi bhi live hai. 1991 mein bana tha.',
654        'Python ka naam Monty Python comedy group se aaya hai — snake se nahi.',
655        'Ek average developer din mein 50-100 baar code dekhta hai — aur 49-99 baar sochta hai ki "ye kya likha hai."',
656        'Stack Overflow par har din 5000+ naye questions aate hain. Sabka pehla answer hota hai: "Duplicate question hai."',
657        'HTML ek programming language nahi hai — yeh ek markup language hai. Lekin interviewer ko yeh mat bolo agar job chahiye.',
658        'Git ka naam British slang hai — "git" ka matlab hota hai annoying person.',
659        'Pehla email 1971 mein bheja gaya tha — Ray Tomlinson ne. Usne baad mein kaha ki usse yaad nahi kya bheja tha.',
660        'Agar tumhara code kaam kar raha hai toh testing mat karo — kuch gadbad zaroor hai.',
661        'Duniya mein sabse zyada use hone wala programming language C hai — 1972 mein bana tha aur abhi bhi king hai.',
662        'Dijkstra ne kaha tha: "Testing proves bugs ka presence, not absence." Matlab: test karo par expect karo ki bug hoga.',
663        'Ek developer ka average typing speed hota hai 60-70 WPM — lekin Stack Overflow dhoondte waqt 200 WPM ho jaata hai.',
664        'CSS ka full form Cascading Style Sheets hai — lekin iska matlab hai ki ek style doosre ko override karta hai, bilkul corporate hierarchy ki tarah.',
665        'Scrum mein "sprint" ka matlab hai tez daudna — lekin actual mein sab log walking speed pe chalte hain.',
666        'Docker: "Mere machine pe toh chal raha hai." — Software industry ka sabse bada jhooth.',
667        'Agar tum apna code 6 mahine baad dekho aur socho "maine ye kyun likha hai", toh samjho tumne sahi code likha hai — kyunki tum improve ho gaye ho.',
668        'Regex: ek baar samajh aaya toh problem solve ho jayegi. Doosri problem: regex samajhna.',
669        'API ek aisa waiter hai jo tumhara order kitchen tak pahunchata hai — par kabhi khud nahi khata.',
670        'Server down hai ya internet slow hai? Agar Stack Overflow nahi khul raha toh samjho apni internet ki problem nahi hai — duniya khatam ho rahi hai.',
671        'React ek library hai jo Facebook ne banayi thi — aur ab har developer sochta hai ki React ke bina zindagi adhoori hai.',
672        'CSS-in-JS ek aisa solution hai jo pehle ke problem ka naya problem banata hai.',
673        'Git merge conflict ek aisa problem hai jo sirf tab hota hai jab dono developers sochte hain ki unka code best hai.',
674        'TypeScript ek aisa language hai jo JavaScript ko bolta hai: "Tum galat ho." —aur JavaScript bolta hai: "Mujhe pata hai."',
675        'Node.js ek aisa runtime hai jo JavaScript ko browser ke bahar bhi chalaata hai — bilkul rebel ki tarah.',
676        'MongoDB ek database hai jo SQL ko bolta hai: "Tables? Humne toh suna bhi nahi."',
677        'Redis ek cache hai jo har cheez ko yaad rakhta hai — bilkul waisa jaisa tumhara ex.',
678        'GraphQL ek query language hai jo REST API ko bolta hai: "Tum bahut zyada data bhejte ho."',
679        'WebSockets ek aisa connection hai jo real-time baat karta hai — bilkul WhatsApp ki tarah.',
680        'CI/CD ek pipeline hai jo automate karta hai — lekin kabhi kabhi khud automate hone lagta hai.',
681      ];
682      if (!funfact._used) funfact._used = [];
683      const available = facts.filter((_, i) => !funfact._used.includes(i));
684      if (available.length === 0) funfact._used = [];
685      const idx = facts.indexOf(available[Math.floor(Math.random() * available.length)]);
686      funfact._used.push(idx);
687      const followups = [
688        '\n\nAur sunao? "funfact" type karo.',
689        '\n\nEk aur? "fact batao" likho.',
690        '\n\nMaza aaya? "interesting" likho aur sunao.',
691        '\n\nAur hai? "pata hai" type karo.',
692        '\n\nBadhiya tha na? "fact" likho phir se.',
693        '\n\nAur batao? "trivia" type karo.',
694      ];
695      return facts[idx] + followups[Math.floor(Math.random() * followups.length)];
696    },
697    english: () => {
698      const facts = [
699        'The first computer bug was an actual insect — a moth found trapped in a Harvard computer in 1947.',
700        'JavaScript was named after Java purely for marketing purposes. The two languages have zero connection.',
701        'The world\'s first website — info.cern.ch — is still live today. It was created in 1991.',
702        'Python is named after the Monty Python comedy group, not the snake.',
703        'An average developer looks at code 50-100 times a day — and 49-99 times thinks "what did I write?"',
704        'Stack Overflow gets 5000+ new questions every day. The first answer is always: "This is a duplicate question."',
705        'HTML is not a programming language — it\'s a markup language. But don\'t tell the interviewer if you want the job.',
706        'Git is named after British slang — "git" means an annoying person.',
707        'The first email was sent in 1971 by Ray Tomlinson. He later said he couldn\'t remember what he sent.',
708        'If your code works, don\'t test it — something is definitely wrong.',
709        'C is the most used programming language in the world — created in 1972 and still the king.',
710        'Dijkstra said: "Testing shows the presence of bugs, not their absence." Meaning: test it, but expect bugs.',
711        'The average developer types 60-70 WPM — but when searching Stack Overflow, it jumps to 200 WPM.',
712        'CSS stands for Cascading Style Sheets — which means one style overrides another, just like corporate hierarchy.',
713        'In Scrum, "sprint" means running fast — but in reality, everyone walks at a leisurely pace.',
714        'Docker: "It works on my machine." — The biggest lie in the software industry.',
715        'If you look at your own code after 6 months and think "why did I write this?", you wrote good code — because you improved.',
716        'Regex: once you understand it, the problem is solved. The second problem: understanding regex.',
717        'An API is like a waiter — it carries your order to the kitchen but never eats itself.',
718        'Server down or slow internet? If Stack Overflow won\'t load, it\'s not your internet — the world is ending.',
719        'React is a library Facebook created — and now every developer thinks life without React is incomplete.',
720        'CSS-in-JS is a solution that creates new problems from old problems.',
721        'Git merge conflict is a problem that only happens when both developers think their code is the best.',
722        'TypeScript is a language that tells JavaScript: "You\'re wrong." — And JavaScript says: "I know."',
723        'Node.js is a runtime that runs JavaScript outside the browser — like a total rebel.',
724        'MongoDB is a database that tells SQL: "Tables? Never heard of them."',
725        'Redis is a cache that remembers everything — exactly like your ex.',
726        'GraphQL is a query language that tells REST APIs: "You\'re sending too much data."',
727        'WebSockets are a real-time connection — just like WhatsApp.',
728        'CI/CD is a pipeline that automates things — but sometimes it starts automating itself.',
729      ];
730      if (!funfact._usedEn) funfact._usedEn = [];
731      const available = facts.filter((_, i) => !funfact._usedEn.includes(i));
732      if (available.length === 0) funfact._usedEn = [];
733      const idx = facts.indexOf(available[Math.floor(Math.random() * available.length)]);
734      funfact._usedEn.push(idx);
735      const followups = [
736        '\n\nAnother one? Type "funfact".',
737        '\n\nOne more? Type "did you know".',
738        '\n\nLiked it? Type "interesting" for more.',
739        '\n\nMore facts? Type "fact".',
740        '\n\nCool right? Type "trivia" again.',
741        '\n\nNext fact? Just type "funfact".',
742      ];
743      return facts[idx] + followups[Math.floor(Math.random() * followups.length)];
744    }
745  },
746
747  // ─── COFFEE ───────────────────────────────────────────────
748  coffee: {
749    keywords: ['coffee', 'chai', 'tea', 'break'],
750    hinglish: `    ( (
751     ) )
752  .______.
753  |      |]
754  \\      /
755   \`----'
756  Chai taiyar hai...
757
758Fuel loaded! Ab coding shuru!`,
759    english: `    ( (
760     ) )
761  .______.
762  |      |]
763  \\      /
764   \`----'
765  Brewing...
766
767Fuel loaded! Ready to code.`
768  },
769
770  // ─── MUSIC ────────────────────────────────────────────────
771  music: {
772    keywords: ['music', 'song', 'gaana', 'playlist', 'listen', 'code music', 'coding'],
773    hinglish: () => {
774      const tracks = [
775        'Lo-fi beats — YouTube pe "Lofi Girl" search karo',
776        'Focus playlist — Spotify pe "Deep Focus"',
777        'Coding energy — "Weezer - Buddy Holly"',
778        'Night coding — "Interstellar Theme"',
779        'Bug fixing mode — "Eye of the Tiger"',
780      ];
781      return tracks[Math.floor(Math.random() * tracks.length)];
782    },
783    english: () => {
784      const tracks = [
785        'Lo-fi beats → Search "Lofi Girl" on YouTube',
786        'Focus playlist → "Deep Focus" on Spotify',
787        'Coding energy → "Weezer - Buddy Holly"',
788        'Night coding → "Interstellar Theme"',
789        'Bug fixing mode → "Eye of the Tiger"',
790      ];
791      return tracks[Math.floor(Math.random() * tracks.length)];
792    }
793  },
794
795  // ─── MATRIX ───────────────────────────────────────────────
796  matrix: {
797    keywords: ['matrix', 'hacker', 'neo', 'code rain', 'green'],
798    hinglish: '__MATRIX__',
799    english: '__MATRIX__'
800  },
801
802  // ─── EASTER EGGS ──────────────────────────────────────────
803  easter: {
804    keywords: ['easter', 'egg', 'secret', 'hidden', 'surprise', 'azaadi'],
805    hinglish: () => {
806      const eggs = [
807        'Easter egg mil gaya! Saad ne ek baar 6 ghante tak debug kiya...\n→ Pata chala ek semicolon missing tha.',
808        'Achievement unlocked: Curious Explorer!',
809        'Insert coin to continue... joke tha, yeh portfolio hai.',
810        'Yahan koi Easter egg nahi hai. Ya hai?',
811        'Fun fact: Yeh chatbot vanilla JS se bana hai. Koi framework hurt nahi hua.',
812      ];
813      return eggs[Math.floor(Math.random() * eggs.length)];
814    },
815    english: () => {
816      const eggs = [
817        'You found an Easter egg! Saad once debugged for 6 hours...\n→ It was a missing semicolon.',
818        'Achievement unlocked: Curious Explorer!',
819        'Insert coin to continue... just kidding, this is a portfolio.',
820        'There is no Easter egg here. Or is there?',
821        'Fun fact: This chatbot was built with vanilla JS. No frameworks harmed.',
822      ];
823      return eggs[Math.floor(Math.random() * eggs.length)];
824    }
825  },
826
827  // ─── DEFAULT ──────────────────────────────────────────────
828  default: {
829    hinglish: `Mujhe samajh nahi aaya. Yeh try karo:
830
831Saad ke baare mein poochho,
832Skills aur tech stack,
833Projects,
834Services aur pricing,
835Kaise hire karein,
836Contact info.
837
838Ya "help" type karo commands dekhne ke liye.`,
839    english: `I'm not sure about that. Try asking about:
840
841About Saad,
842Skills and tech stack,
843Projects,
844Services and pricing,
845How to hire,
846Contact info.
847
848Or type "help" to see available commands.`
849  }
850};
851
852// ─── Command aliases ──────────────────────────────────────────
853export const COMMAND_ALIASES = {
854  'help':    '__HELP__',
855  'clear':   '__CLEAR__',
856  'theme':   '__THEME__',
857  'resume':  '__RESUME__',
858};
859
860// ─── Language detector export ─────────────────────────────────
861export { isHinglish };

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.