[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"page--\u002Fblog\u002Farticle":3,"schema--\u002Fblog\u002Farticle":48,"317e8e2a-912c-49a3-98d2-832985198aa9":49,"bc5d6217-b80c-499b-91a7-1dbca7208203":53,"ebe02389-31a7-4644-addc-9a469af71e79":89,"blog-detail":298,"254171d1-0f9c-4a28-ba73-b88a0c100638":879,"related-blogs":1373},{"id":4,"name":5,"seo":6,"status":9,"schema":10,"template":11,"sections":35,"redirect":47},"289e4d80-4fe0-4497-8225-40d2b6d0fd37","Article ",{"title":7,"no_index":8,"no_follow":8},"Article",false,"published",[],{"name":12,"start_sections":13,"end_sections":19,"custom_codes":30},"Default",[14],{"collection":15,"id":16,"item":17},"section_harsh",12,{"id":18},"254171d1-0f9c-4a28-ba73-b88a0c100638",[20,25],{"collection":21,"id":22,"item":23},"section_hem",2,{"id":24},"bc5d6217-b80c-499b-91a7-1dbca7208203",{"collection":26,"id":27,"item":28},"section_bhavin",40,{"id":29},"ebe02389-31a7-4644-addc-9a469af71e79",[31,33,34],{"custom_codes":32},null,{"custom_codes":32},{"custom_codes":32},[36,42],{"collection":37,"id":38,"sort":39,"item":40},"section_bhargav",5576,1,{"id":41},"1b3ea167-b557-47ad-996c-6eeb0bcf3c08",{"collection":43,"id":44,"sort":22,"item":45},"section_krusha",5606,{"id":46},"317e8e2a-912c-49a3-98d2-832985198aa9",[],[],{"id":46,"title":50,"subtitle":51,"blogs":52,"selected_blogs":32},"\u003Cdiv>\n\u003Cdiv>More\u003C\u002Fdiv>\n\u003C\u002Fdiv>","\u003Cp>An interesting read? Here is more related to it.\u003C\u002Fp>","related",{"address":54,"contact":71},[55,64],{"hem_addresse":56},{"country":57,"address":58,"contact_number":59},"India (HQ)","\u003Cp>201, iSquare Corporate Park, Ahmedabad-380060, Gujarat, India\u003C\u002Fp>",{"type":60,"label":61,"url":62,"anchor_id":32,"target":63,"description":32,"click_id":32,"page":32,"icon":32,"section":32},"url","+91 77 97 977 977","tel:+917797977977","_blank",{"hem_addresse":65},{"country":66,"address":67,"contact_number":68},"Canada","\u003Cp>24 Merlot Court, Timberlea, NS B3T 0C2, Canada\u003C\u002Fp>",{"type":60,"label":69,"url":70,"anchor_id":32,"target":63,"description":32,"click_id":32,"page":32,"icon":32,"section":32},"+1 902-333-0067","tel:+19023330067",[72,78],{"hem_contact":73},{"label":74,"contact_value":75,"link":76},"\u003Cp>For Sales\u003C\u002Fp>","YO@7SPAN.COM",{"type":60,"label":75,"url":77,"anchor_id":32,"target":63,"description":32,"click_id":32,"page":32,"icon":32,"section":32},"mailto:YO@7SPAN.COM?subject=Inquiry",{"hem_contact":79},{"label":80,"contact_value":81,"link":82},"\u003Cp>Looking For Jobs\u003C\u002Fp>","Apply Now",{"type":83,"label":84,"url":32,"anchor_id":32,"target":32,"description":32,"click_id":32,"page":85,"icon":87,"section":32},"page","Career",{"path":86},"\u002Fcareers",{"name":84,"value":88,"svg":32},"mdi:briefcase-variant-outline",{"id":29,"tagline":90,"iso_badges":91,"logo":92,"logo_link":97,"tagline_logo":102,"links":106,"social_links":107,"link_columns":164},"Whatever your challenge, stage, or vision, we make IT possible.","ISO 9001:2015 | ISO 42001:2023 Certified",{"id":93,"width":32,"height":32,"title":94,"type":95,"filename_disk":96},"2e271b47-e9db-44a4-a71f-0071aec6d2a2","Logo Light","image\u002Fsvg+xml","2e271b47-e9db-44a4-a71f-0071aec6d2a2.svg",{"type":83,"label":98,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":100,"icon":32},"back to home","_self",{"path":101},"\u002F",{"id":103,"width":32,"height":32,"title":104,"type":95,"filename_disk":105},"0808758f-6b4f-46a1-b9ef-19027465a472","Making It Possible Light","0808758f-6b4f-46a1-b9ef-19027465a472.svg",[],{"type":32,"label":108,"url":32,"anchor_id":32,"target":32,"description":32,"section":32,"page":32,"icon":32,"links":109},"Social Media",[110,116,122,128,134,140,146,152,158],{"children":111},{"type":60,"label":112,"url":113,"anchor_id":32,"target":63,"description":32,"section":32,"page":32,"icon":114},"Github","https:\u002F\u002Fgithub.com\u002F7span",{"name":112,"value":115,"svg":32},"simple-icons:github",{"children":117},{"type":60,"label":118,"url":119,"anchor_id":32,"target":63,"description":32,"section":32,"page":32,"icon":120},"LinkedIn","https:\u002F\u002Fwww.linkedin.com\u002Fcompany\u002F7span",{"name":118,"value":121,"svg":32},"simple-icons:linkedin",{"children":123},{"type":60,"label":124,"url":125,"anchor_id":32,"target":63,"description":32,"section":32,"page":32,"icon":126},"Instagram","https:\u002F\u002Finstagram.com\u002F7span",{"name":124,"value":127,"svg":32},"simple-icons:instagram",{"children":129},{"type":60,"label":130,"url":131,"anchor_id":32,"target":63,"description":32,"section":32,"page":32,"icon":132},"X","https:\u002F\u002Fx.com\u002F7SpanHQ",{"name":130,"value":133,"svg":32},"simple-icons:x",{"children":135},{"type":60,"label":136,"url":137,"anchor_id":32,"target":63,"description":32,"section":32,"page":32,"icon":138},"Facebook","https:\u002F\u002Ffacebook.com\u002F7span",{"name":136,"value":139,"svg":32},"simple-icons:facebook",{"children":141},{"type":60,"label":142,"url":143,"anchor_id":32,"target":63,"description":32,"section":32,"page":32,"icon":144},"Youtube","https:\u002F\u002Fyoutube.com\u002F7span",{"name":142,"value":145,"svg":32},"simple-icons:youtube",{"children":147},{"type":60,"label":148,"url":149,"anchor_id":32,"target":63,"description":32,"section":32,"page":32,"icon":150},"Discord","https:\u002F\u002F7span.in\u002Fclub",{"name":148,"value":151,"svg":32},"simple-icons:discord",{"children":153},{"type":60,"label":154,"url":155,"anchor_id":32,"target":63,"description":32,"section":32,"page":32,"icon":156},"Behance","https:\u002F\u002Fwww.behance.net\u002F7span",{"name":154,"value":157,"svg":32},"simple-icons:behance",{"children":159},{"type":60,"label":160,"url":161,"anchor_id":32,"target":63,"description":32,"section":32,"page":32,"icon":162},"Dribbble","https:\u002F\u002Fdribbble.com\u002F7span",{"name":160,"value":163,"svg":32},"simple-icons:dribbble",{"type":32,"label":32,"url":32,"anchor_id":32,"target":32,"description":32,"section":32,"page":32,"icon":32,"links":165},[166,210,249],{"children":167},{"type":32,"label":168,"url":32,"anchor_id":32,"target":32,"description":32,"section":32,"page":32,"icon":32,"links":169},"Hire Developers",[170,175,180,185,190,195,200,205],{"children":171},{"type":83,"label":172,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":173,"icon":32},"Hire Node JS Developer",{"path":174},"\u002Fhire-node-js-developers",{"children":176},{"type":83,"label":177,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":178,"icon":32},"Hire React Developer",{"path":179},"\u002Fhire-react-developers",{"children":181},{"type":83,"label":182,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":183,"icon":32},"Hire Java Developer",{"path":184},"\u002Fhire-java-developers",{"children":186},{"type":83,"label":187,"url":32,"anchor_id":32,"target":32,"description":32,"section":32,"page":188,"icon":32},"Hire Directus Developers",{"path":189},"\u002Fhire-directus-developers",{"children":191},{"type":83,"label":192,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":193,"icon":32},"Hire Webflow Developer",{"path":194},"\u002Fhire-webflow-developer",{"children":196},{"type":83,"label":197,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":198,"icon":32},"Hire AWS Developer",{"path":199},"\u002Fhire-aws-experts",{"children":201},{"type":83,"label":202,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":203,"icon":32},"Hire Flutter Developer",{"path":204},"\u002Fhire-flutter-developers",{"children":206},{"type":83,"label":207,"url":32,"anchor_id":32,"target":32,"description":32,"section":32,"page":208,"icon":32},"See More",{"path":209},"\u002Fhire-dedicated-developers",{"children":211},{"type":32,"label":212,"url":32,"anchor_id":32,"target":32,"description":32,"section":32,"page":32,"icon":32,"links":213},"Industries",[214,219,224,229,234,239,244],{"children":215},{"type":83,"label":216,"url":32,"anchor_id":32,"target":32,"description":32,"section":32,"page":217,"icon":32},"Manufacturing",{"path":218},"\u002Findustry\u002Fmanufacturing",{"children":220},{"type":83,"label":221,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":222,"icon":32},"Real Estate & Construction",{"path":223},"\u002Findustry\u002Freal-estate",{"children":225},{"type":83,"label":226,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":227,"icon":32},"Healthcare & Wellness",{"path":228},"\u002Findustry\u002Fhealthcare",{"children":230},{"type":83,"label":231,"url":32,"anchor_id":32,"target":32,"description":32,"section":32,"page":232,"icon":32},"Travel & Hospitality",{"path":233},"\u002Findustry\u002Ftravel-hospitality",{"children":235},{"type":83,"label":236,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":237,"icon":32},"Banking & Finance",{"path":238},"\u002Findustry\u002Fbanking-finance",{"children":240},{"type":83,"label":241,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":242,"icon":32},"Ecommerce & Retail",{"path":243},"\u002Findustry\u002Fretail-ecommerce",{"children":245},{"type":83,"label":246,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":247,"icon":32},"Government & Public Sector",{"path":248},"\u002Findustry\u002Fgovernment-and-public-service",{"children":250},{"type":32,"label":251,"url":32,"anchor_id":32,"target":32,"description":32,"section":32,"page":32,"icon":252,"links":258},"Company",{"name":253,"value":32,"svg":254},"Making IT Possible | Black Font",{"id":255,"width":32,"height":32,"title":256,"type":95,"filename_disk":257},"ef48a6de-e34e-400b-8de4-c5d5c1b5ff5f","Group","ef48a6de-e34e-400b-8de4-c5d5c1b5ff5f.svg",[259,266,273,280,284,291],{"children":260},{"type":83,"label":261,"url":32,"anchor_id":32,"target":32,"description":32,"section":32,"page":262,"icon":264},"About",{"path":263},"\u002Fabout",{"name":261,"value":265,"svg":32},"mdi:information-outline",{"children":267},{"type":83,"label":268,"url":32,"anchor_id":32,"target":32,"description":32,"section":32,"page":269,"icon":271},"Technologies",{"path":270},"\u002Ftechnologies",{"name":268,"value":272,"svg":32},"mdi:code-braces",{"children":274},{"type":83,"label":275,"url":32,"anchor_id":32,"target":32,"description":32,"section":32,"page":276,"icon":278},"Testimonials",{"path":277},"\u002Ftestimonials",{"name":275,"value":279,"svg":32},"mdi:chat-processing-outline",{"children":281},{"type":83,"label":84,"url":32,"anchor_id":32,"target":32,"description":32,"section":32,"page":282,"icon":283},{"path":86},{"name":84,"value":88,"svg":32},{"children":285},{"type":83,"label":286,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":287,"icon":289},"Contact",{"path":288},"\u002Fcontact",{"name":286,"value":290,"svg":32},"mdi:email-outline",{"children":292},{"type":83,"label":293,"url":32,"anchor_id":32,"target":63,"description":32,"section":32,"page":294,"icon":296},"Brand Assets",{"path":295},"\u002Fbrand",{"name":293,"value":297,"svg":32},"mdi:brush-variant",{"data":299},[300],{"id":301,"title":302,"date_published":303,"summary":32,"seo_description":304,"update_date":32,"tags":305,"cover":311,"sections":314,"author":851,"category":32,"og_image":864,"color_primary":867},"aa32b186-6e2d-4a74-935c-3178d6b71485","Spring AI with Spring Boot: A Simple Guide for Beginners","2026-10-14","Spring AI 2.0 brings ChatClient, embeddings and tool calling to Spring Boot 4. Build your first AI-powered REST endpoint in 5 steps with working Java code.",[306],{"bg_tags_id":307},{"label":308,"slug":309,"id":310},"AI","ai","d85f2271-f26a-4da5-b9df-6c6630762c1c",{"id":312,"filename_disk":313},"f94d0f90-2b73-416a-b88d-b7fd166fed9f","f94d0f90-2b73-416a-b88d-b7fd166fed9f.jpg",[315,794,803],{"collection":316,"item":317},"bg_sections_content_blocks",{"id":318,"name":319,"content":320,"metadata":788},"2ce4abb2-abbb-492a-8fd2-164d1bc8064d","body 1",{"time":321,"blocks":322,"version":787},1791887449613,[323,331,337,344,350,356,361,367,373,379,385,406,412,418,424,446,452,458,464,471,477,481,487,493,497,503,509,513,519,525,531,537,541,547,553,557,563,569,575,581,587,597,603,609,615,619,625,631,637,641,647,653,657,663,669,673,679,695,701,707,711,717,721,727,731,737,743,749,753,759,763,769,775,781],{"id":324,"data":325,"type":327,"tunes":328},"qJlyxeohM5",{"text":326},"AI is showing up everywhere, from support chatbots and content generation to searching internal documents. For Spring Boot developers, adding these features used to mean hand-writing HTTP calls, managing prompts, parsing JSON responses and juggling embeddings. Spring AI removes most of that work. It lets you talk to AI models through the same kind of Spring-style APIs you already use every day.","paragraph",{"alignment":329},{"alignment":330},"left",{"id":332,"data":333,"type":327,"tunes":335},"5cnKpWgvsM",{"text":334},"In this guide, we'll cover what Spring AI is, where it's useful, and how to build a small AI-powered app with Spring Boot in five steps.",{"alignment":336},{"alignment":330},{"id":338,"data":339,"type":341,"tunes":342},"1q6CQyZZuh",{"text":340,"level":22},"What is Spring AI?","header",{"alignment":343},{"alignment":330},{"id":345,"data":346,"type":327,"tunes":348},"jhGU7iayrp",{"text":347},"Spring AI is a project in the Spring ecosystem that gives Java developers a common API for working with AI models. Its 2.0 release supports providers including OpenAI, Anthropic, Google GenAI, Amazon Bedrock, Mistral AI, DeepSeek and Ollama (\u003Ca href=\"https:\u002F\u002Fspring.io\u002Fblog\u002F2026\u002F06\u002F12\u002Fspring-ai-2-0-0-GA-available-now\u002F\" target=\"_blank\">Spring Blog\u003C\u002Fa>, 2026), so your code doesn't have to be tied to a single vendor.",{"alignment":349},{"alignment":330},{"id":351,"data":352,"type":327,"tunes":354},"E3MiabhVib",{"text":353},"In simple terms:",{"alignment":355},{"alignment":330},{"id":357,"data":358,"type":360},"p8nT6PGhan",{"code":359},"Spring Boot Application\n    ↓     \nSpring AI        \n    ↓     \nAI Model        \n    ↓     \nResponse","code",{"id":362,"data":363,"type":327,"tunes":365},"yujAkq1OKd",{"text":364},"Instead of writing provider-specific API calls by hand, you work with common interfaces. The main one is&nbsp;\u003Ccode>ChatClient\u003C\u002Fcode>, which gives you a fluent way to send prompts and read responses.",{"alignment":366},{"alignment":330},{"id":368,"data":369,"type":341,"tunes":371},"sZnO-M6nKc",{"text":370,"level":22},"Why use Spring AI instead of calling the API directly?",{"alignment":372},{"alignment":330},{"id":374,"data":375,"type":327,"tunes":377},"aC0LsYW92V",{"text":376},"Spring Boot is used by 14.7% of all developers, and Java by 29.4% (\u003Ca href=\"https:\u002F\u002Fsurvey.stackoverflow.co\u002F2025\u002Ftechnology\" target=\"_blank\">Stack Overflow Developer Survey\u003C\u002Fa>, 2025). For that audience, Spring AI means adding AI without leaving familiar patterns like dependency injection, auto-configuration and&nbsp;\u003Ccode>application.properties\u003C\u002Fcode>.",{"alignment":378},{"alignment":330},{"id":380,"data":381,"type":327,"tunes":383},"lZ27dxvrxK",{"text":382},"Say you want to add a chatbot to your app. Without Spring AI, you'd normally handle:",{"alignment":384},{"alignment":330},{"id":386,"data":387,"type":405},"kMkOYOr6A_",{"items":388,"style":404},[389,392,395,398,401],{"items":390,"content":391},[],"Creating HTTP requests",{"items":393,"content":394},[],"Adding API authentication",{"items":396,"content":397},[],"Building the request JSON",{"items":399,"content":400},[],"Calling the AI API",{"items":402,"content":403},[],"Parsing the response","unordered","nestedlist",{"id":407,"data":408,"type":327,"tunes":410},"lfiJBBjchK",{"text":409},"Spring AI handles that boilerplate. And because it uses common abstractions, swapping one model provider for another is mostly a configuration change. Isn't that how the rest of your Spring stack already works?",{"alignment":411},{"alignment":330},{"id":413,"data":414,"type":341,"tunes":416},"cDk1Kb4MHZ",{"text":415,"level":22},"Where is Spring AI useful?",{"alignment":417},{"alignment":330},{"id":419,"data":420,"type":327,"tunes":422},"nxC8E2Pfbq",{"text":421},"Spring AI fits wherever a Spring Boot app needs to understand or generate language. With 84% of developers already using or planning to use AI tools (\u003Ca href=\"https:\u002F\u002Fsurvey.stackoverflow.co\u002F2025\u002Fai\" target=\"_blank\">Stack Overflow\u003C\u002Fa>, 2025), the common starting points look like this:",{"alignment":423},{"alignment":330},{"id":425,"data":426,"type":405},"so_pyM5JGn",{"items":427,"style":404},[428,431,434,437,440,443],{"items":429,"content":430},[],"AI chatbots and virtual assistants",{"items":432,"content":433},[],"Question-answer systems",{"items":435,"content":436},[],"Document search and summarization",{"items":438,"content":439},[],"Content generation",{"items":441,"content":442},[],"Semantic search and RAG (retrieval-augmented generation)",{"items":444,"content":445},[],"AI-powered business actions",{"id":447,"data":448,"type":327,"tunes":450},"dDXOSrihBh",{"text":449},"For example, a support app can use Spring AI to answer questions from company documents instead of relying only on canned responses.",{"alignment":451},{"alignment":330},{"id":453,"data":454,"type":341,"tunes":456},"6R1BGLCNP4",{"text":455,"level":22},"What can you do with Spring AI?",{"alignment":457},{"alignment":330},{"id":459,"data":460,"type":327,"tunes":462},"BLaKtNyMBf",{"text":461},"Spring AI covers five capabilities most beginners need: chat, prompt templates, embeddings, vector stores and tool calling. The 2.0 release also builds in Model Context Protocol (MCP) support (\u003Ca href=\"https:\u002F\u002Fspring.io\u002Fblog\u002F2026\u002F06\u002F12\u002Fspring-ai-2-0-0-GA-available-now\u002F\" target=\"_blank\">Spring Blog\u003C\u002Fa>, 2026), but you won't need that for your first app.",{"alignment":463},{"alignment":330},{"id":465,"data":466,"type":341,"tunes":469},"fOX5Ez3nu2",{"text":467,"level":468},"1. Chat and text generation",3,{"alignment":470},{"alignment":330},{"id":472,"data":473,"type":327,"tunes":475},"kVCzfvC6oh",{"text":474},"Send a prompt to an AI model and get a response back.",{"alignment":476},{"alignment":330},{"id":478,"data":479,"type":360},"fF1HK3m_8J",{"code":480},"Write a welcome message for a new customer.",{"id":482,"data":483,"type":341,"tunes":485},"Nll9RgyJEA",{"text":484,"level":468},"2. Prompt handling",{"alignment":486},{"alignment":330},{"id":488,"data":489,"type":327,"tunes":491},"cY-iw9XqSh",{"text":490},"Build dynamic prompts from user input or application data.",{"alignment":492},{"alignment":330},{"id":494,"data":495,"type":360},"CwEDw2z1zU",{"code":496},"Explain {topic} in simple English.",{"id":498,"data":499,"type":341,"tunes":501},"et5OQNaMrg",{"text":500,"level":468},"3. Embeddings",{"alignment":502},{"alignment":330},{"id":504,"data":505,"type":327,"tunes":507},"ADwChJh4sw",{"text":506},"Convert text into vectors so you can find similar or related content. Embeddings power semantic search, document search and RAG.",{"alignment":508},{"alignment":330},{"id":510,"data":511,"type":360},"ovJB8STNw2",{"code":512},"\"I forgot my password.\"\n        ↓\n[0.12, -0.43, 0.87, ...]",{"id":514,"data":515,"type":341,"tunes":517},"YkALgiB_nT",{"text":516,"level":468},"4. Vector stores",{"alignment":518},{"alignment":330},{"id":520,"data":521,"type":327,"tunes":523},"Fabhp-wxN0",{"text":522},"Store and search embeddings in a vector database such as PostgreSQL with PGVector. This is the backbone of most RAG applications.",{"alignment":524},{"alignment":330},{"id":526,"data":527,"type":341,"tunes":529},"c8z6BO8zGl",{"text":528,"level":468},"5. Tool calling",{"alignment":530},{"alignment":330},{"id":532,"data":533,"type":327,"tunes":535},"0jqhxYEOiy",{"text":534},"Let the AI model call methods in your application to fetch real-time data. For example, the model can call your&nbsp;\u003Ccode>getOrderStatus()\u003C\u002Fcode>&nbsp;method to answer:",{"alignment":536},{"alignment":330},{"id":538,"data":539,"type":360},"IB7-grcAiH",{"code":540},"What is the status of order 12345?",{"id":542,"data":543,"type":341,"tunes":545},"8WPGFQaX7l",{"text":544,"level":22},"How does Spring AI work?",{"alignment":546},{"alignment":330},{"id":548,"data":549,"type":327,"tunes":551},"YNgsoYXQRh",{"text":550},"A Spring AI request follows the same path as any other Spring Boot request, with&nbsp;\u003Ccode>ChatClient\u003C\u002Fcode>&nbsp;sitting between your service layer and the model:",{"alignment":552},{"alignment":330},{"id":554,"data":555,"type":360},"LZY65EzcsZ",{"code":556},"User\n  ↓\nSpring Boot Controller\n  ↓\nChatClient\n  ↓\nAI Model\n  ↓\nAI Response\n  ↓\nUser",{"id":558,"data":559,"type":327,"tunes":561},"ql5HGziR_f",{"text":560},"A user sends something like&nbsp;\"Explain Spring Boot in simple words.\"&nbsp;Your app passes that prompt through Spring AI to the configured model, and the generated answer goes back to the user.",{"alignment":562},{"alignment":330},{"id":564,"data":565,"type":341,"tunes":567},"BczqdxM6J-",{"text":566,"level":22},"How do you get started with Spring AI?",{"alignment":568},{"alignment":330},{"id":570,"data":571,"type":327,"tunes":573},"xU8k4CmAMH",{"text":572},"You need a Spring Boot 4.0.x or 4.1.x project, since Spring AI 2.0.x supports only those versions (\u003Ca href=\"https:\u002F\u002Fdocs.spring.io\u002Fspring-ai\u002Freference\u002Fgetting-started.html\" target=\"_blank\">Spring AI Docs\u003C\u002Fa>, 2026). Projects still on Boot 3.x will need to upgrade first. We'll build an app that takes a question and returns an AI-generated answer, using OpenAI as the provider.",{"alignment":574},{"alignment":330},{"id":576,"data":577,"type":341,"tunes":579},"ojSAopWAPx",{"text":578,"level":468},"Step 1: Create a Spring Boot project",{"alignment":580},{"alignment":330},{"id":582,"data":583,"type":327,"tunes":585},"FeV86BbkJ5",{"text":584},"Create a project with&nbsp;\u003Ca href=\"https:\u002F\u002Fstart.spring.io\u002F\" target=\"_blank\">Spring Initializr\u003C\u002Fa>&nbsp;and add:",{"alignment":586},{"alignment":330},{"id":588,"data":589,"type":405},"z28bAcp68e",{"items":590,"style":404},[591,594],{"items":592,"content":593},[],"Spring Web",{"items":595,"content":596},[],"OpenAI (under the AI section)",{"id":598,"data":599,"type":327,"tunes":601},"BBDgDywNi4",{"text":600},"Initializr lets you pick whichever model integration you need, and it adds the Spring AI BOM for you.",{"alignment":602},{"alignment":330},{"id":604,"data":605,"type":341,"tunes":607},"-KIy2D-Jak",{"text":606,"level":468},"Step 2: Add the Spring AI dependencies",{"alignment":608},{"alignment":330},{"id":610,"data":611,"type":327,"tunes":613},"H_f37D0XjP",{"text":612},"If you're adding Spring AI to an existing Maven project, you need two things: the BOM, which manages versions, and the OpenAI starter.",{"alignment":614},{"alignment":330},{"id":616,"data":617,"type":360},"AmYgkT4jWl",{"code":618},"\u003CdependencyManagement>\n    \u003Cdependencies>\n        \u003Cdependency>\n            \u003CgroupId>org.springframework.ai\u003C\u002FgroupId>\n            \u003CartifactId>spring-ai-bom\u003C\u002FartifactId>\n            \u003Cversion>2.0.1\u003C\u002Fversion>\n            \u003Ctype>pom\u003C\u002Ftype>\n            \u003Cscope>import\u003C\u002Fscope>\n        \u003C\u002Fdependency>\n    \u003C\u002Fdependencies>\n\u003C\u002FdependencyManagement>\n\n\u003Cdependencies>\n    \u003Cdependency>\n        \u003CgroupId>org.springframework.ai\u003C\u002FgroupId>\n        \u003CartifactId>spring-ai-starter-model-openai\u003C\u002FartifactId>\n    \u003C\u002Fdependency>\n\u003C\u002Fdependencies>",{"id":620,"data":621,"type":327,"tunes":623},"0oN1qFx_SI",{"text":622},"Don't skip the BOM. The starter has no version of its own, so without the BOM your build will fail.",{"alignment":624},{"alignment":330},{"id":626,"data":627,"type":341,"tunes":629},"Q_owz0v7A8",{"text":628,"level":468},"Step 3: Configure OpenAI",{"alignment":630},{"alignment":330},{"id":632,"data":633,"type":327,"tunes":635},"n8QS7j9Nw6",{"text":634},"Add this to&nbsp;\u003Ccode>application.properties\u003C\u002Fcode>:",{"alignment":636},{"alignment":330},{"id":638,"data":639,"type":360},"J9A7zOGSZP",{"code":640},"spring.ai.openai.api-key=${OPENAI_API_KEY}\nspring.ai.openai.chat.model=gpt-5-mini",{"id":642,"data":643,"type":327,"tunes":645},"dNibJHB9vn",{"text":644},"\u003Ccode>gpt-5-mini\u003C\u002Fcode>&nbsp;is Spring AI's default OpenAI chat model, so the second line is optional. Keep it if you want the choice to be explicit.",{"alignment":646},{"alignment":330},{"id":648,"data":649,"type":327,"tunes":651},"SxaKodfwUt",{"text":650},"Keep your API key in an environment variable, never in source code:",{"alignment":652},{"alignment":330},{"id":654,"data":655,"type":360},"G24sPMrZGf",{"code":656},"export OPENAI_API_KEY=your-api-key",{"id":658,"data":659,"type":341,"tunes":661},"YD8Wg_6zrm",{"text":660,"level":468},"Step 4: Create the AI service",{"alignment":662},{"alignment":330},{"id":664,"data":665,"type":327,"tunes":667},"8PDOCdcvOE",{"text":666},"Now create a service that uses&nbsp;\u003Ccode>ChatClient\u003C\u002Fcode>. Spring Boot auto-configures a&nbsp;\u003Ccode>ChatClient.Builder\u003C\u002Fcode>&nbsp;for you.",{"alignment":668},{"alignment":330},{"id":670,"data":671,"type":360},"cHCUD0t_kh",{"code":672},"@Service\npublic class AiService {\n\n    private final ChatClient chatClient;\n\n    public AiService(ChatClient.Builder chatClientBuilder) {\n        this.chatClient = chatClientBuilder.build();\n    }\n\n    public String ask(String question) {\n        return chatClient\n                .prompt()\n                .user(question)\n                .call()\n                .content();\n    }\n}",{"id":674,"data":675,"type":327,"tunes":677},"T2doBajgKf",{"text":676},"Only four calls matter here:",{"alignment":678},{"alignment":330},{"id":680,"data":681,"type":405},"Lzo-DjEmJj",{"items":682,"style":404},[683,686,689,692],{"items":684,"content":685},[],"prompt()",{"items":687,"content":688},[],"user(question)",{"items":690,"content":691},[],"call()",{"items":693,"content":694},[],"content()",{"id":696,"data":697,"type":341,"tunes":699},"EZWu3emMIw",{"text":698,"level":468},"Step 5: Create the controller",{"alignment":700},{"alignment":330},{"id":702,"data":703,"type":327,"tunes":705},"mgFKztiiN_",{"text":704},"Expose the service through a REST endpoint.",{"alignment":706},{"alignment":330},{"id":708,"data":709,"type":360},"e811mtn8-A",{"code":710},"@RestController\n@RequestMapping(\"\u002Fapi\u002Fai\")\npublic class AiController {\n\n    private final AiService aiService;\n\n    public AiController(AiService aiService) {\n        this.aiService = aiService;\n    }\n\n    @GetMapping(\"\u002Fask\")\n    public String ask(@RequestParam String question) {\n        return aiService.ask(question);\n    }\n}",{"id":712,"data":713,"type":327,"tunes":715},"B3NA5gRyvx",{"text":714},"Run the app and call:",{"alignment":716},{"alignment":330},{"id":718,"data":719,"type":360},"d1jUQoSYk1",{"code":720},"GET \u002Fapi\u002Fai\u002Fask?question=What is Spring Boot?",{"id":722,"data":723,"type":327,"tunes":725},"muoHkDHpoc",{"text":724},"You'll get a response along these lines:",{"alignment":726},{"alignment":330},{"id":728,"data":729,"type":360},"_AKo47MLSJ",{"code":730},"Spring Boot is a framework built on top of Spring\nthat makes it easier to create Java applications\nwith less configuration.",{"id":732,"data":733,"type":327,"tunes":735},"LYLCi_giZX",{"text":734},"That's it. Your Spring Boot app is now talking to an AI model through Spring AI.",{"alignment":736},{"alignment":330},{"id":738,"data":739,"type":341,"tunes":741},"qjWw3zf4v9",{"text":740,"level":22},"What are embeddings in Spring AI?",{"alignment":742},{"alignment":330},{"id":744,"data":745,"type":327,"tunes":747},"yd17kXLqMy",{"text":746},"An embedding turns text into a list of numbers (a vector) that represents its meaning. Spring AI exposes this through the&nbsp;\u003Ccode>EmbeddingModel\u003C\u002Fcode>&nbsp;API, and texts with similar meanings end up with similar vectors. That's what makes semantic search and RAG possible.",{"alignment":748},{"alignment":330},{"id":750,"data":751,"type":360},"SvgaBTrCyD",{"code":752},"\"I forgot my password.\"\n          ↓\n    Embedding Model\n          ↓\n[0.12, -0.31, 0.74, ...]",{"id":754,"data":755,"type":327,"tunes":757},"jpVidh0cpX",{"text":756},"With the OpenAI starter on the classpath, you can inject&nbsp;\u003Ccode>EmbeddingModel\u003C\u002Fcode>&nbsp;and call it directly:",{"alignment":758},{"alignment":330},{"id":760,"data":761,"type":360},"IB8GAA2SSj",{"code":762},"float[] vector = embeddingModel.embed(\"I forgot my password.\");",{"id":764,"data":765,"type":327,"tunes":767},"y1V87uaQ2m",{"text":766},"You'd then store these vectors in a vector database and search them to find content related to a user's question. A query like \"can't log in\" would match the password-reset doc even though the two share no keywords.",{"alignment":768},{"alignment":330},{"id":770,"data":771,"type":341,"tunes":773},"UW_De_UGL5",{"text":772,"level":22},"Final thoughts",{"alignment":774},{"alignment":330},{"id":776,"data":777,"type":327,"tunes":779},"eYGEmDCFlR",{"text":778},"Spring AI makes it easier for Spring Boot developers to start working with AI. You don't need to learn every feature before shipping your first AI endpoint.",{"alignment":780},{"alignment":330},{"id":782,"data":783,"type":327,"tunes":785},"fnkPMa2SgZ",{"text":784},"The core idea is simple. Spring AI gives Java developers a familiar, Spring-style way to add AI to their applications. Start with&nbsp;\u003Ccode>ChatClient\u003C\u002Fcode>, get one endpoint working, then add embeddings, vector stores or tool calling as your app needs them.",{"alignment":786},{"alignment":330},"2.28.2",{"title":789,"id":790,"component":791},"Editor Renderer","b20b790f-9bf7-4fe4-a500-220d9752c67a",{"name":792,"id":793},"sections-blog-editor","8f082246-494c-41a1-b796-da33c0cc1e2e",{"collection":795,"item":796},"bg_sections_tiny_cta",{"id":797,"title":798,"description":799,"status":800,"button_label":801,"url":802},"0d118aea-2d9b-4341-9742-b0e681214c07","Taking Spring AI from demo to production?","\u003Cp>Book a 30-minute technical call with our Java engineers. Bring your current stack and the AI feature you&rsquo;re planning.\u003C\u002Fp>","draft","Book a Call","https:\u002F\u002F7span.com\u002Fcontact",{"collection":804,"item":805},"bg_sections_faqs",{"id":806,"title":807,"subtitle":32,"status":800,"faqs":808},"9d894bdd-e70b-4d92-9ed2-68af09bf183f","\u003Ch2>FAQs\u003C\u002Fh2>",[809,821,828,835,843],{"id":810,"sort":39,"bg_sections_faqs_id":811,"faq_cards_id":817},182,{"title":807,"subtitle":32,"id":806,"status":800,"faqs":812},[810,813,814,815,816],183,184,185,186,{"question":818,"answer":819,"id":820},"\u003Ch3>Which Spring Boot version does Spring AI 2.0 need?\u003C\u002Fh3>","\u003Cp>Spring AI 2.0.x supports Spring Boot 4.0.x and 4.1.x, built on Spring Framework 7.0. If you're on Spring Boot 3.x, upgrade to Boot 4 first. Spring AI 2.0 also moves to Jackson 3, so check your JSON customizations during the upgrade.\u003C\u002Fp>","553a69fe-1858-4707-9528-5b0f7c9e5ae8",{"id":813,"sort":22,"bg_sections_faqs_id":822,"faq_cards_id":824},{"title":807,"subtitle":32,"id":806,"status":800,"faqs":823},[810,813,814,815,816],{"question":825,"answer":826,"id":827},"\u003Ch3>Can I use Spring AI with models other than OpenAI?\u003C\u002Fh3>","\u003Cp>Yes. Spring AI 2.0 supports OpenAI, Anthropic, Google GenAI, Amazon Bedrock, Mistral AI, DeepSeek and Ollama. Switching providers usually means changing the starter dependency and a few properties. Your ChatClient code stays the same.\u003C\u002Fp>","b3c5987e-618b-432c-a29a-a941b424235f",{"id":814,"sort":468,"bg_sections_faqs_id":829,"faq_cards_id":831},{"title":807,"subtitle":32,"id":806,"status":800,"faqs":830},[810,813,814,815,816],{"question":832,"answer":833,"id":834},"\u003Ch3>Can I run Spring AI with a local model instead of a paid API?\u003C\u002Fh3>","\u003Cp>Yes, through the Ollama integration. Ollama runs open models on your own machine or server, so prompts never leave your infrastructure and there's no per-token API bill. It's a good fit for local development and for data you can't send to a third-party API.\u003C\u002Fp>","eeacaba4-2c7e-4f52-ab22-ae47ceefc224",{"id":815,"sort":836,"bg_sections_faqs_id":837,"faq_cards_id":839},4,{"title":807,"subtitle":32,"id":806,"status":800,"faqs":838},[810,813,814,815,816],{"question":840,"answer":841,"id":842},"\u003Ch3>Why does my build fail after adding the Spring AI starter?\u003C\u002Fh3>","\u003Cp>The most common cause is a missing spring-ai-bom. Spring AI starters don't declare their own versions, so Maven or Gradle can't resolve them without the BOM in dependencyManagement. The second most common cause is running Spring AI 2.0 on Spring Boot 3.x, which isn't supported.\u003C\u002Fp>","f40d3baf-810b-47c8-8e9c-01b550e7a908",{"id":816,"sort":844,"bg_sections_faqs_id":845,"faq_cards_id":847},5,{"title":807,"subtitle":32,"id":806,"status":800,"faqs":846},[810,813,814,815,816],{"question":848,"answer":849,"id":850},"\u003Ch3>What's the difference between ChatClient and EmbeddingModel?\u003C\u002Fh3>","\u003Cp>ChatClient sends prompts to a chat model and returns generated text, which you'd use for chatbots, summaries or Q&amp;A. EmbeddingModel converts text into numeric vectors that capture meaning, which you'd use for semantic search and RAG. Most RAG apps use both: embeddings to find relevant documents, then ChatClient to answer from them.\u003C\u002Fp>","d6d9ea86-3a67-4c24-8c61-f15ae034f8ef",{"first_name":852,"last_name":853,"id":854,"email":855,"facebook_url":32,"description":856,"x_url":857,"linkedin_url":858,"instagram_url":32,"title":859,"slug":860,"avatar":861},"Harsh","Kansagara","63f3767a-c7ee-4ebd-98d7-f37f62cd853c","harsh@7span.com","Driven by memes and functional thinking, I excel at solving complex problems. With over a decade of experience in designing, crafting, and launching websites, mobile apps, and desktop apps, I bring a profound understanding of UI design, visual communication, and usability principles. 💪 I'm constantly observing, learning, and building because the design isn't just a process; it's a comical dialogue between people and technology if you can hear it well. 🙌","https:\u002F\u002Fx.com\u002Ftheharshin","https:\u002F\u002Fwww.linkedin.com\u002Fin\u002Ftheharsh\u002F","Chief Operations Officer","harsh-kansagara",{"id":862,"filename_disk":863},"1db522f0-2979-4773-a410-767296648e93","1db522f0-2979-4773-a410-767296648e93.jpg",{"id":865,"filename_disk":866},"484b512a-5d8b-46ee-83ee-81f576d43fbd","484b512a-5d8b-46ee-83ee-81f576d43fbd.jpg",{"name":868,"_100":869,"_200":870,"_300":871,"_400":872,"_500":873,"_700":874,"_600":875,"_900":876,"_800":877,"id":878,"status":9},"Tailwind Green","#DCFCE7","#BBF7D0","#86EFAC","#4ADE80","#22C55E","#15803D","#16A34A","#14532D","#166534","b8fe990f-d1f4-466c-8ef5-f65d9c3290cc",{"logo":880,"logo_link":884,"button_primary":886,"links":893},{"id":881,"width":32,"height":32,"title":882,"type":95,"filename_disk":883},"be082e99-8711-4293-b716-4b3da8c6dd29","Logo Dark","be082e99-8711-4293-b716-4b3da8c6dd29.svg",{"type":83,"label":98,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":885,"icon":32},{"path":101},{"type":83,"label":887,"url":32,"anchor_id":888,"target":99,"description":32,"section":32,"page":889,"icon":890},"Get In Touch","contact_form",{"path":288},{"name":891,"value":892,"svg":32},"Call","mdi:phone",{"type":32,"label":894,"url":32,"anchor_id":32,"target":32,"description":32,"section":32,"page":32,"icon":32,"links":895},"Menu",[896,1072,1078,1326,1332,1338],{"children":897},{"type":83,"label":898,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":899,"icon":32,"links":901},"Services",{"path":900},"\u002Fservices",[902,959,1010,1041],{"children":903},{"type":83,"label":904,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":905,"icon":907,"links":913},"Build",{"path":906},"\u002Fbuild",{"name":908,"value":32,"svg":909},"Advanced Manufacturing & Industrial Products",{"id":910,"width":32,"height":32,"title":911,"type":95,"filename_disk":912},"0461b3d3-f165-4a6b-bcd8-a8f4a63120ef","Mega Menu (1)","0461b3d3-f165-4a6b-bcd8-a8f4a63120ef.svg",[914,919,924,929,934,939,944,949,954],{"children":915},{"type":83,"label":916,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":917,"icon":32},"Custom Applications",{"path":918},"\u002Fcustom-software-development",{"children":920},{"type":83,"label":921,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":922,"icon":32},"Enterprise Solutions",{"path":923},"\u002Fenterprise-application-solutions",{"children":925},{"type":83,"label":926,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":927,"icon":32},"eCommerce & Digital Storefronts",{"path":928},"\u002Fecommerce-development",{"children":930},{"type":83,"label":931,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":932,"icon":32},"No-Code\u002FLow-Code Solutions",{"path":933},"\u002Flow-code-no-code-development",{"children":935},{"type":83,"label":936,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":937,"icon":32},"Custom Web Development",{"path":938},"\u002Fcustom-web-development",{"children":940},{"type":83,"label":941,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":942,"icon":32},"SaaS",{"path":943},"\u002Fsaas-product-development",{"children":945},{"type":83,"label":946,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":947,"icon":32},"Cloud & DevOps",{"path":948},"\u002Fcloud-devops-engineering",{"children":950},{"type":83,"label":951,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":952,"icon":32},"Mobile App Development",{"path":953},"\u002Fmobile-application-development",{"children":955},{"type":83,"label":956,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":957,"icon":32},"CMS Development",{"path":958},"\u002Fcms-development",{"children":960},{"type":83,"label":961,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":962,"icon":964,"links":969},"Grow",{"path":963},"\u002Fgrow",{"name":965,"value":965,"svg":966},"Dawnrise",{"id":967,"width":32,"height":32,"title":965,"type":95,"filename_disk":968},"ba95220f-833d-4ca4-8a11-2a4b67cd134e","ba95220f-833d-4ca4-8a11-2a4b67cd134e.svg",[970,975,980,985,990,995,1000,1005],{"children":971},{"type":83,"label":972,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":973,"icon":32},"Performance Marketing Services",{"path":974},"\u002Fperformance-marketing-services",{"children":976},{"type":83,"label":977,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":978,"icon":32},"eCommerce Growth Solutions",{"path":979},"\u002Fecommerce-growth-solutions",{"children":981},{"type":83,"label":982,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":983,"icon":32},"UX Optimization & Accessibility",{"path":984},"\u002Fui-ux-design",{"children":986},{"type":83,"label":987,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":988,"icon":32},"IT Strategy & Process Optimization",{"path":989},"\u002Fit-optimization",{"children":991},{"type":83,"label":992,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":993,"icon":32},"Application Maintenance & Support",{"path":994},"\u002Fapplication-maintenance",{"children":996},{"type":83,"label":997,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":998,"icon":32},"IT Staff Augmentation Services",{"path":999},"\u002Fit-staff-augmentation-services",{"children":1001},{"type":83,"label":1002,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":1003,"icon":32},"B2B Lead Generation Solutions",{"path":1004},"\u002Flead-generation-services",{"children":1006},{"type":83,"label":1007,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":1008,"icon":32},"Business Intelligence & Data Analytics",{"path":1009},"\u002Fbusiness-intelligence-and-data-analytics",{"children":1011},{"type":83,"label":1012,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":1013,"icon":1015,"links":1020},"Transform",{"path":1014},"\u002Ftransform",{"name":1016,"value":1016,"svg":1017},"Ember Nest",{"id":1018,"width":32,"height":32,"title":1016,"type":95,"filename_disk":1019},"317591fd-6bf7-4888-a695-78ecdf2507af","317591fd-6bf7-4888-a695-78ecdf2507af.svg",[1021,1026,1031,1036],{"children":1022},{"type":83,"label":1023,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":1024,"icon":32},"Legacy App Modernizations",{"path":1025},"\u002Flegacy-app-modernization",{"children":1027},{"type":83,"label":1028,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":1029,"icon":32},"AI & Advanced Tech Solutions",{"path":1030},"\u002Fai-and-emerging-technologies",{"children":1032},{"type":83,"label":1033,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":1034,"icon":32},"Cloud & Infrastructure Transformation",{"path":1035},"\u002Fcloud-infrastructure-modernization",{"children":1037},{"type":83,"label":1038,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":1039,"icon":32},"IoT & Smart Solutions",{"path":1040},"\u002Fiot-development-smart-integration",{"children":1042},{"type":83,"label":1043,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":1044,"icon":1046,"links":1051},"Consulting",{"path":1045},"\u002Fconsulting",{"name":1047,"value":1047,"svg":1048},"Twinflame",{"id":1049,"width":32,"height":32,"title":1047,"type":95,"filename_disk":1050},"5c461564-acb7-4926-b30f-1ef56efb28f5","5c461564-acb7-4926-b30f-1ef56efb28f5.svg",[1052,1057,1062,1067],{"children":1053},{"type":83,"label":1054,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":1055,"icon":32},"Product Consulting",{"path":1056},"\u002Fproduct-strategy-and-management",{"children":1058},{"type":83,"label":1059,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":1060,"icon":32},"Tech Consulting",{"path":1061},"\u002Ftechnology-consulting",{"children":1063},{"type":83,"label":1064,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":1065,"icon":32},"Design Consulting",{"path":1066},"\u002Fux-consulting",{"children":1068},{"type":83,"label":1069,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":1070,"icon":32},"Digital Marketing Consulting",{"path":1071},"\u002Fdigital-marketing-consulting",{"children":1073},{"type":83,"label":1074,"url":32,"anchor_id":32,"target":32,"description":32,"section":32,"page":1075,"icon":32,"links":1077},"Solutions",{"path":1076},"\u002Fsolutions",[],{"children":1079},{"type":32,"label":1080,"url":32,"anchor_id":32,"target":32,"description":32,"section":32,"page":32,"icon":32,"links":1081},"Products",[1082,1106,1161,1199,1302],{"children":1083},{"type":32,"label":941,"url":32,"anchor_id":32,"target":32,"description":32,"section":32,"page":32,"icon":32,"links":1084},[1085,1096],{"children":1086},{"type":83,"label":1087,"url":32,"anchor_id":32,"target":63,"description":1088,"section":32,"page":1089,"icon":1091},"Vepaar","\u003Cp>The all-in-one suite to run, sell, and support your business online\u003C\u002Fp>",{"path":1090},"\u002Fvepaar",{"name":1092,"value":32,"svg":1093},"Vepaar Icon",{"id":1094,"width":32,"height":32,"title":1087,"type":95,"filename_disk":1095},"d4bead81-d2b1-4457-bb6b-1c363f743d9d","d4bead81-d2b1-4457-bb6b-1c363f743d9d.svg",{"children":1097},{"type":83,"label":1098,"url":32,"anchor_id":32,"target":63,"description":1099,"section":32,"page":1100,"icon":1102},"Pagemaker","\u003Cp>Mobile First No-Code Landing Page Builder\u003C\u002Fp>",{"path":1101},"\u002Fpagemaker",{"name":1098,"value":32,"svg":1103},{"id":1104,"width":32,"height":32,"title":1098,"type":95,"filename_disk":1105},"d4ac2317-ff68-456d-abec-2ebc0930cd42","d4ac2317-ff68-456d-abec-2ebc0930cd42.svg",{"children":1107},{"type":32,"label":1108,"url":32,"anchor_id":32,"target":32,"description":32,"section":32,"page":32,"icon":32,"links":1109},"Mobile Apps",[1110,1120,1130,1140,1151],{"children":1111},{"type":83,"label":1112,"url":32,"anchor_id":32,"target":63,"description":1113,"section":32,"page":1114,"icon":1116},"Tapomo","\u003Cp>A Digital Business Card and Networking Platform\u003C\u002Fp>",{"path":1115},"\u002Ftapomo",{"name":1112,"value":32,"svg":1117},{"id":1118,"width":32,"height":32,"title":1112,"type":95,"filename_disk":1119},"13cc60db-cd9e-4fff-8f13-76b6155ab95d","13cc60db-cd9e-4fff-8f13-76b6155ab95d.svg",{"children":1121},{"type":83,"label":1122,"url":32,"anchor_id":32,"target":63,"description":1123,"section":32,"page":1124,"icon":1126},"Voliz","\u003Cp>A Real-Time WhatsApp Polling Platform\u003C\u002Fp>",{"path":1125},"\u002Fvoliz",{"name":1122,"value":32,"svg":1127},{"id":1128,"width":32,"height":32,"title":1122,"type":95,"filename_disk":1129},"d79f8032-d289-4376-bdd8-84d205ae2582","d79f8032-d289-4376-bdd8-84d205ae2582.svg",{"children":1131},{"type":83,"label":1132,"url":32,"anchor_id":32,"target":63,"description":1133,"section":32,"page":1134,"icon":1136},"Frink","\u003Cp>A Customizable Link in Bio Tool for Creators and Brands\u003C\u002Fp>",{"path":1135},"\u002Ffrink",{"name":1132,"value":32,"svg":1137},{"id":1138,"width":32,"height":32,"title":1132,"type":95,"filename_disk":1139},"82f881ca-7824-482b-a9ca-16ccb5f92037","82f881ca-7824-482b-a9ca-16ccb5f92037.svg",{"children":1141},{"type":83,"label":1142,"url":32,"anchor_id":32,"target":63,"description":1143,"section":32,"page":1144,"icon":1146},"BakLoL","\u003Cp>A Location-Based Voice Sharing Platform\u003C\u002Fp>",{"path":1145},"\u002Fbaklol",{"name":1142,"value":32,"svg":1147},{"id":1148,"width":32,"height":32,"title":1149,"type":95,"filename_disk":1150},"98f3c152-6255-45f1-a81f-fcc5e3414738","Baklol","98f3c152-6255-45f1-a81f-fcc5e3414738.svg",{"children":1152},{"type":83,"label":1153,"url":32,"anchor_id":32,"target":63,"description":1154,"section":32,"page":1155,"icon":1157},"Mixpage","\u003Cp>Build Your Website From Your Phone\u003C\u002Fp>",{"path":1156},"\u002Fmixpage",{"name":1153,"value":32,"svg":1158},{"id":1159,"width":32,"height":32,"title":1153,"type":95,"filename_disk":1160},"984e1e41-5b38-4b0a-9348-204b5c74920f","984e1e41-5b38-4b0a-9348-204b5c74920f.svg",{"children":1162},{"type":32,"label":1163,"url":32,"anchor_id":32,"target":32,"description":32,"section":32,"page":32,"icon":32,"links":1164},"Odoo Apps",[1165,1177,1188],{"children":1166},{"type":83,"label":1167,"url":32,"anchor_id":32,"target":63,"description":1168,"section":32,"page":1169,"icon":1171},"CRM Dashboard","\u003Cp>Real-Time Sales &amp; Revenue Tracking\u003C\u002Fp>",{"path":1170},"\u002Fodoo-apps\u002Fcrm-dashboard",{"name":1172,"value":32,"svg":1173},"CRM Dashboard Icon",{"id":1174,"width":32,"height":32,"title":1175,"type":95,"filename_disk":1176},"2cae4e0f-2f45-4f8e-8bf6-15f00ac88835","Crm","2cae4e0f-2f45-4f8e-8bf6-15f00ac88835.svg",{"children":1178},{"type":83,"label":1179,"url":32,"anchor_id":32,"target":63,"description":1180,"section":32,"page":1181,"icon":1183},"Cashfree Integration","\u003Cp>Payment Gateway Integration for Odoo\u003C\u002Fp>",{"path":1182},"\u002Fodoo-apps\u002Fcashfree",{"name":1184,"value":32,"svg":1185},"Cashfree",{"id":1186,"width":32,"height":32,"title":1184,"type":95,"filename_disk":1187},"846054ee-c8e0-4051-b561-0c1be07c51f1","846054ee-c8e0-4051-b561-0c1be07c51f1.svg",{"children":1189},{"type":83,"label":1190,"url":32,"anchor_id":32,"target":63,"description":1191,"section":32,"page":1192,"icon":1194},"Purchase Order","\u003Cp>Order Payment App for B2B Checkout\u003C\u002Fp>",{"path":1193},"\u002Fodoo-apps\u002Fpurchase-order",{"name":1190,"value":32,"svg":1195},{"id":1196,"width":32,"height":32,"title":1197,"type":95,"filename_disk":1198},"098cf550-448b-4114-91d3-fbac10b7f0d9","Purchase 2","098cf550-448b-4114-91d3-fbac10b7f0d9.svg",{"children":1200},{"type":83,"label":1201,"url":32,"anchor_id":32,"target":32,"description":32,"section":32,"page":1202,"icon":32,"links":1204},"Open Source",{"path":1203},"\u002Fopen-source",[1205,1221,1233,1244,1257,1269,1280,1292],{"children":1206},{"type":1207,"label":1208,"url":1209,"anchor_id":1210,"target":63,"description":1211,"section":1212,"page":1214,"icon":1215},"section","VueList","https:\u002F\u002F7span.com\u002Fopen-source#124e0f59-576e-4b49-9026-7387da467b91","124e0f59-576e-4b49-9026-7387da467b91","\u003Cp>Simplified API-based list rendering for Vue\u003C\u002Fp>",{"item":1213},"e5d8dfa8-b10a-4e99-8d28-7f80f9093dfa",{"path":1203},{"name":1216,"value":32,"svg":1217},"Vue List Icon",{"id":1218,"width":32,"height":32,"title":1219,"type":95,"filename_disk":1220},"049a33aa-cbf8-4b83-94d8-4a78c9faaf8a","Vue List","049a33aa-cbf8-4b83-94d8-4a78c9faaf8a.svg",{"children":1222},{"type":1207,"label":1223,"url":32,"anchor_id":1224,"target":99,"description":1225,"section":1226,"page":1227,"icon":1228},"ReactList","ffedf96a-b43d-45aa-84b8-51110cb37a4f","\u003Cp>Simplified API-based list rendering for React\u003C\u002Fp>",{"item":1224},{"path":1203},{"name":1229,"value":32,"svg":1230},"React List",{"id":1231,"width":32,"height":32,"title":1229,"type":95,"filename_disk":1232},"153b9211-ca81-4fe5-bc76-753821ee6da7","153b9211-ca81-4fe5-bc76-753821ee6da7.svg",{"children":1234},{"type":1207,"label":1235,"url":32,"anchor_id":1213,"target":63,"description":1236,"section":1237,"page":1238,"icon":1239},"VueForm","\u003Cp>Build consistent CRUD forms, faster for Vue\u003C\u002Fp>",{"item":1213},{"path":1203},{"name":1240,"value":32,"svg":1241},"Vue Form",{"id":1242,"width":32,"height":32,"title":1240,"type":95,"filename_disk":1243},"7e33276e-fc6d-438f-9c10-5d2d70ab0606","7e33276e-fc6d-438f-9c10-5d2d70ab0606.svg",{"children":1245},{"type":1207,"label":1246,"url":32,"anchor_id":1247,"target":99,"description":1248,"section":1249,"page":1250,"icon":1251},"ReactForm","8c35e524-04a2-4d63-ab2b-9154efd92323","\u003Cp>Build consistent CRUD forms, faster for React.\u003C\u002Fp>",{"item":1247},{"path":1203},{"name":1252,"value":32,"svg":1253},"React Form",{"id":1254,"width":32,"height":32,"title":1255,"type":95,"filename_disk":1256},"d49e0b78-c98f-4bda-9dc4-4f5f238cf06a","React Form 3","d49e0b78-c98f-4bda-9dc4-4f5f238cf06a.svg",{"children":1258},{"type":1207,"label":1259,"url":32,"anchor_id":1260,"target":32,"description":1261,"section":1262,"page":1263,"icon":1264},"DashingKit","28787115-d6c9-48e9-9569-a184610e1d84","\u003Cp>A Flutter starter kit built for scalable apps\u003C\u002Fp>",{"item":1260},{"path":1203},{"name":1265,"value":32,"svg":1266},"Dashing Kit",{"id":1267,"width":32,"height":32,"title":1265,"type":95,"filename_disk":1268},"c742d34d-afc2-4e89-a8fe-34f68a95c5c0","c742d34d-afc2-4e89-a8fe-34f68a95c5c0.svg",{"children":1270},{"type":1207,"label":1271,"url":32,"anchor_id":1272,"target":32,"description":1273,"section":1274,"page":1275,"icon":1276},"Laravel Chat","34f46942-e97b-43c4-aa2a-ff34a38853ed","\u003Cp>The all-in-one Laravel chat package\u003C\u002Fp>",{"item":1272},{"path":1203},{"name":1271,"value":32,"svg":1277},{"id":1278,"width":32,"height":32,"title":1271,"type":95,"filename_disk":1279},"c2558639-c78c-45a3-9a75-cc7c2bfcc250","c2558639-c78c-45a3-9a75-cc7c2bfcc250.svg",{"children":1281},{"type":1207,"label":1282,"url":32,"anchor_id":1283,"target":32,"description":1284,"section":1285,"page":1286,"icon":1287},"Laravel Code Generator","550942dc-1760-41da-9ac6-d0305bf8ae33","\u003Cp>Automated CRUD Code\u003C\u002Fp>",{"item":1283},{"path":1203},{"name":1288,"value":32,"svg":1289},"Laravel Code Genrator",{"id":1290,"width":32,"height":32,"title":1282,"type":95,"filename_disk":1291},"6a9a0b3f-987e-47b5-a98d-620db73dd3c6","6a9a0b3f-987e-47b5-a98d-620db73dd3c6.svg",{"children":1293},{"type":32,"label":1294,"url":32,"anchor_id":1295,"target":32,"description":1296,"section":32,"page":32,"icon":1297},"Laravel WhatsApp","0d6926a8-0bce-4d31-8f1d-c49de22aa674","\u003Cp>Easy WhatsApp Message API Integration\u003C\u002Fp>",{"name":1298,"value":32,"svg":1299},"Laravel Whatsapp",{"id":1300,"width":32,"height":32,"title":1298,"type":95,"filename_disk":1301},"686ec747-c1d4-431a-8e94-f65b11c24067","686ec747-c1d4-431a-8e94-f65b11c24067.svg",{"children":1303},{"type":32,"label":1304,"url":32,"anchor_id":32,"target":32,"description":32,"section":32,"page":32,"icon":32,"links":1305},"Brands",[1306,1316],{"children":1307},{"type":83,"label":1308,"url":32,"anchor_id":32,"target":63,"description":1309,"section":32,"page":1310,"icon":1312},"Motolith","\u003Cp>A Unified Auto Parts Marketplace Platform\u003C\u002Fp>",{"path":1311},"\u002Fmotolith",{"name":1308,"value":32,"svg":1313},{"id":1314,"width":32,"height":32,"title":1308,"type":95,"filename_disk":1315},"7965c08f-b2e5-40cf-b51a-23c3f04b8f4e","7965c08f-b2e5-40cf-b51a-23c3f04b8f4e.svg",{"children":1317},{"type":83,"label":1318,"url":32,"anchor_id":32,"target":63,"description":1319,"section":32,"page":1320,"icon":1322},"Carkhana","\u003Cp>A Digital Garage and Vehicle Management Platform\u003C\u002Fp>",{"path":1321},"\u002Fcarkhana",{"name":1318,"value":32,"svg":1323},{"id":1324,"width":32,"height":32,"title":1318,"type":95,"filename_disk":1325},"04a7e020-1f2a-4b47-a9fe-18a0938b5ffc","04a7e020-1f2a-4b47-a9fe-18a0938b5ffc.svg",{"children":1327},{"type":83,"label":1328,"url":32,"anchor_id":32,"target":32,"description":32,"section":32,"page":1329,"icon":32,"links":1331},"Work",{"path":1330},"\u002Fwork",[],{"children":1333},{"type":83,"label":1334,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":1335,"icon":32,"links":1337},"Blog",{"path":1336},"\u002Fblog",[],{"children":1339},{"type":32,"label":251,"url":32,"anchor_id":32,"target":32,"description":32,"section":32,"page":32,"icon":1340,"links":1342},{"name":253,"value":32,"svg":1341},{"id":255,"width":32,"height":32,"title":256,"type":95,"filename_disk":257},[1343,1348,1353,1358,1363,1368],{"children":1344},{"type":83,"label":261,"url":32,"anchor_id":32,"target":32,"description":32,"section":32,"page":1345,"icon":1346,"links":1347},{"path":263},{"name":261,"value":265,"svg":32},[],{"children":1349},{"type":83,"label":268,"url":32,"anchor_id":32,"target":32,"description":32,"section":32,"page":1350,"icon":1351,"links":1352},{"path":270},{"name":268,"value":272,"svg":32},[],{"children":1354},{"type":83,"label":275,"url":32,"anchor_id":32,"target":32,"description":32,"section":32,"page":1355,"icon":1356,"links":1357},{"path":277},{"name":275,"value":279,"svg":32},[],{"children":1359},{"type":83,"label":84,"url":32,"anchor_id":32,"target":32,"description":32,"section":32,"page":1360,"icon":1361,"links":1362},{"path":86},{"name":84,"value":88,"svg":32},[],{"children":1364},{"type":83,"label":286,"url":32,"anchor_id":32,"target":99,"description":32,"section":32,"page":1365,"icon":1366,"links":1367},{"path":288},{"name":286,"value":290,"svg":32},[],{"children":1369},{"type":83,"label":293,"url":32,"anchor_id":32,"target":63,"description":32,"section":32,"page":1370,"icon":1371,"links":1372},{"path":295},{"name":293,"value":297,"svg":32},[],[]]