{"id":227,"date":"2024-01-10T09:23:33","date_gmt":"2024-01-10T09:23:33","guid":{"rendered":"https:\/\/blog.200oksolutions.com\/?p=227"},"modified":"2025-12-04T07:44:09","modified_gmt":"2025-12-04T07:44:09","slug":"implementing-yajra-datatables-in-laravel-10-a-step-by-step-guide","status":"publish","type":"post","link":"https:\/\/www.200oksolutions.com\/blog\/implementing-yajra-datatables-in-laravel-10-a-step-by-step-guide\/","title":{"rendered":"Implementing Yajra DataTables in Laravel 10: A Step-by-Step Guide"},"content":{"rendered":"\n<p>Welcome to our step-by-step guide on implementing Yajra DataTables in a Laravel 10 project. Yajra DataTables is a powerful library that seamlessly integrates the jQuery DataTables API with Laravel. It simplifies server-side operations using AJAX and supports Eloquent ORM, Fluent Query Builder, or Collection. <\/p>\n\n\n\n<p>Follow along as we set up a Laravel project, install Yajra Datatables, create a model and migrations, generate dummy records, set up a controller, define routes, and finally, display records with a visually stunning table using Bootstrap.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Step 1: Install the Laravel App<\/strong><\/h2>\n\n\n\n<p>Let&#8217;s start by creating a new Laravel project using Composer:<\/p>\n\n\n\n<pre class=\"wp-block-code has-black-color has-silver-blue-background-color has-text-color has-background has-link-color wp-elements-07685b468774c092ef619724358a9ec0\"><code>composer create-project laravel\/laravel laravel-yajra-datatables --prefer-dist\ncd laravel-yajra-datatables<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Step 2: Install Yajra Datatable Package<\/h2>\n\n\n\n<p>Next, we&#8217;ll install the Yajra DataTable plugin:<\/p>\n\n\n\n<pre class=\"wp-block-code has-black-color has-silver-blue-background-color has-text-color has-background has-link-color wp-elements-8ff2bf9463db9a93bdb1f2dcd91e90c0\"><code>composer require yajra\/laravel-datatables-oracle<\/code><\/pre>\n\n\n\n<p>After installing, expand the foundational service by adding the service provider and alias in the&nbsp;<code><strong>config\/app.php<\/strong><\/code>&nbsp;file:<\/p>\n\n\n\n<pre class=\"wp-block-code has-black-color has-silver-blue-background-color has-text-color has-background has-link-color wp-elements-5aaec848b51958b28e1652150cc7b501\"><code>\/\/ config\/app.php\n\n'providers' =&gt; &#91;\n    \/\/ ...\n    Yajra\\DataTables\\DataTablesServiceProvider::class,\n],\n\n'aliases' =&gt; &#91;\n    \/\/ ...\n    'DataTables' =&gt; Yajra\\DataTables\\Facades\\DataTables::class,\n]<\/code><\/pre>\n\n\n\n<p>Run the vendor publish command:<\/p>\n\n\n\n<pre class=\"wp-block-code has-black-color has-silver-blue-background-color has-text-color has-background has-link-color wp-elements-835c7e814625040c27a0d86220970487\"><code>php artisan vendor:publish --provider=\"Yajra\\DataTables\\DataTablesServiceProvider\"<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Step 3: Set Up the Model and Migrations<\/h2>\n\n\n\n<p>Generate a model and migration for the &#8216;blogs&#8217; table:<\/p>\n\n\n\n<pre class=\"wp-block-code has-black-color has-silver-blue-background-color has-text-color has-background has-link-color wp-elements-1983dacc03860927980a78570afe9bcb\"><code>php artisan make:model Blog --m<\/code><\/pre>\n\n\n\n<p>Add the following code to the generated migration file:<\/p>\n\n\n\n<pre class=\"wp-block-code has-black-color has-silver-blue-background-color has-text-color has-background has-link-color wp-elements-8e4f8b914b89c9c5d3f0a5ba4ec624d4\"><code>\/\/ database\/migrations\/xxxx_xx_xx_create_blogs_table.php\n\npublic function up(): void\n{\n    Schema::create('blogs', function (Blueprint $table) {\n        $table-&gt;id();\n        $table-&gt;string('title');\n        $table-&gt;string('description');\n        $table-&gt;text('content');\n        $table-&gt;timestamps();\n    });\n}<\/code><\/pre>\n\n\n\n<p>In the <code><strong>app\/Models\/Blog.php<\/strong><\/code>&nbsp;file, add the following code:<\/p>\n\n\n\n<pre class=\"wp-block-code has-black-color has-silver-blue-background-color has-text-color has-background has-link-color wp-elements-aeda7e27772e9931a4e47199d010e6f4\"><code>&lt;?php\n\nnamespace App\\Models;\n\nuse Illuminate\\Database\\Eloquent\\Factories\\HasFactory;\nuse Illuminate\\Database\\Eloquent\\Model;\n\nclass Blog extends Model\n{\n    use HasFactory;\n\n    protected $fillable = &#91;\n        'title',\n        'description',\n        'content',\n    ];\n}<\/code><\/pre>\n\n\n\n<p>Run the migration command:<\/p>\n\n\n\n<pre class=\"wp-block-code has-black-color has-silver-blue-background-color has-text-color has-background has-link-color wp-elements-eb52f4d238f5709608c3af06b56f5ac8\"><code>php artisan migrate<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Step 4: Generate Dummy Records<\/h2>\n\n\n\n<p>To test Yajra Datatables, let&#8217;s create dummy records using Faker. Open&nbsp;<code>database\/seeders\/DatabaseSeeder.php<\/code>&nbsp;and add the following code:<\/p>\n\n\n\n<pre class=\"wp-block-code has-black-color has-silver-blue-background-color has-text-color has-background has-link-color wp-elements-857639cd158ad983882f0a2f360ef2b3\"><code>\/\/ database\/seeders\/DatabaseSeeder.php\n\npublic function run(): void\n{\n    $faker = \\Faker\\Factory::create();\n    for ($i = 0; $i &lt; 200; $i++) {\n        \\DB::table('blogs')-&gt;insert(&#91;\n            'title' =&gt; $faker-&gt;sentence($nbWords = 6, \n                       $variableNbWords = true),\n            'description' =&gt; $faker-&gt;paragraph\n                       ($nbSentences = 2,\n                       $variableNbSentences = true),\n            'content' =&gt; $faker-&gt;text($maxNbChars = 500),\n        ]);\n    }\n}<\/code><\/pre>\n\n\n\n<p>Run the seeder command:<\/p>\n\n\n\n<pre class=\"wp-block-code has-black-color has-silver-blue-background-color has-text-color has-background has-link-color wp-elements-c70364760d70f72bea01cbabbb907870\"><code>php artisan db:seed<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Step 5: Create a Controller<\/h2>\n\n\n\n<p>Now, let&#8217;s create a controller for our Blog model:<\/p>\n\n\n\n<pre class=\"wp-block-code has-black-color has-silver-blue-background-color has-text-color has-background has-link-color wp-elements-00c52a670caa0d925a35e76c16a01896\"><code>php artisan make:controller BlogController<\/code><\/pre>\n\n\n\n<p>Open the file&nbsp;<code><strong>app\/Http\/Controllers\/BlogController.ph<\/strong>p<\/code>&nbsp;and add the following code:<\/p>\n\n\n\n<pre class=\"wp-block-code has-black-color has-silver-blue-background-color has-text-color has-background has-link-color wp-elements-910161a1ea3c4ad1af67c720ecb276a5\" style=\"border-style:none;border-width:0px\"><code>&lt;?php\n\nnamespace App\\Http\\Controllers;\n\nuse Yajra\\DataTables\\Facades\\Datatables;\nuse App\\Models\\Blog;\nuse Illuminate\\Http\\Request;\n\nclass BlogController extends Controller\n{\n    public function index(Request $request)\n    {\n        if ($request-&gt;ajax()) {\n            $data = Blog::all();\n            return Datatables::of($data)\n                -&gt;addIndexColumn()\n                -&gt;addColumn('action', function ($row) {\n                  $actionBtn = '&lt;a href=\"javascript:void(0)\"\n                  class=\"edit btn btn-success btn-sm\"&gt;Edit&lt;\/a&gt; \n                  &lt;a href=\"javascript:void(0)\" \n                  class=\"delete btn btn-danger btn-sm\"&gt;Delete\n                  &lt;\/a&gt;';\n                  return $actionBtn;\n                })\n                -&gt;rawColumns(&#91;'action'])\n                -&gt;make(true);\n        }\n        return view('welcome');\n    }\n}<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Step 6: Create Routes<\/h2>\n\n\n\n<p>Create routes to display the data table in our view. Open <code><strong>routes\/web.ph<\/strong>p<\/code>\u00a0and add the following code:<\/p>\n\n\n\n<pre class=\"wp-block-code has-black-color has-silver-blue-background-color has-text-color has-background has-link-color wp-elements-580eb0941891c213e77cd68ecb074d9a\"><code>&lt;?php\n\nuse Illuminate\\Support\\Facades\\Route;\nuse App\\Http\\Controllers\\BlogController;\n\nRoute::get('blogs', &#91;BlogController::class, 'index'])-&gt;name('blogs.index');<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Step 7: Displaying Records with Laravel Yajra Datatables<\/h2>\n\n\n\n<p>Create the&nbsp;<code><strong>welcome.blade.php<\/strong><\/code>&nbsp; file in&nbsp;<code><strong>resources\/views\/<\/strong><\/code>&nbsp;and place the following code:<\/p>\n\n\n\n<pre class=\"wp-block-code has-black-color has-silver-blue-background-color has-text-color has-background has-link-color wp-elements-feb137abcd86d77bcccb5ff592915e4c\"><code>&lt;!DOCTYPE html&gt;\n&lt;html lang=\"en\"&gt;\n&lt;head&gt;\n    &lt;meta charset=\"UTF-8\"&gt;\n    &lt;meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"&gt;\n    &lt;title&gt;Implementing Yajra Datatables in Laravel 10&lt;\/title&gt;\n    &lt;meta name=\"csrf-token\" content=\"{{ csrf_token() }}\"&gt;\n    &lt;link href=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/twitter-bootstrap\/5.0.1\/css\/bootstrap.min.css\" rel=\"stylesheet\"&gt;\n    &lt;link href=\"https:\/\/cdn.datatables.net\/1.11.4\/css\/dataTables.bootstrap5.min.css\" rel=\"stylesheet\"&gt;\n    &lt;script src=\"https:\/\/code.jquery.com\/jquery-3.5.1.js\"&gt;&lt;\/script&gt;\n    &lt;script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/jquery-validate\/1.19.0\/jquery.validate.js\"&gt;&lt;\/script&gt;\n    &lt;script src=\"https:\/\/cdn.datatables.net\/1.11.4\/js\/jquery.dataTables.min.js\"&gt;&lt;\/script&gt;\n    &lt;script src=\"https:\/\/cdn.jsdelivr.net\/npm\/bootstrap@5.0.2\/dist\/js\/bootstrap.bundle.min.js\" integrity=\"sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn\/tWtIaxVXM\" crossorigin=\"anonymous\"&gt;&lt;\/script&gt;\n    &lt;script src=\"https:\/\/cdn.datatables.net\/1.11.4\/js\/dataTables.bootstrap5.min.js\"&gt;&lt;\/script&gt;\n&lt;\/head&gt;\n&lt;body&gt;\n    &lt;div class=\"container\"&gt;\n        &lt;h1&gt;Implementing Yajra Datatables in Laravel 10&lt;\/h1&gt;\n        &lt;table class=\"table table-bordered data-table\"&gt;\n            &lt;thead&gt;\n                &lt;tr&gt;\n                    &lt;th&gt;No&lt;\/th&gt;\n                    &lt;th&gt;Title&lt;\/th&gt;\n                    &lt;th&gt;Description&lt;\/th&gt;\n                    &lt;th&gt;Content&lt;\/th&gt;\n                    &lt;th width=\"105px\"&gt;Action&lt;\/th&gt;\n                &lt;\/tr&gt;\n            &lt;\/thead&gt;\n            &lt;tbody&gt;&lt;\/tbody&gt;\n        &lt;\/table&gt;\n    &lt;\/div&gt;\n\n    &lt;script type=\"text\/javascript\"&gt;\n        $(function() {\n            gb_DataTable = $(\".data-table\").DataTable({\n                autoWidth: false,\n                order: &#91;0, \"ASC\"],\n                processing: true,\n                serverSide: true,\n                searchDelay: 2000,\n                paging: true,\n                ajax: \"{{ route('blogs.index') }}\",\n                iDisplayLength: \"25\",\n                columns: &#91;\n                    { data: 'id', name: 'id' },\n                    { data: 'title', name: 'title' },\n                    { data: 'description', name: 'description' },\n                    { data: 'content', name: 'content' },\n                    { data: 'action', name: 'action', orderable: false, searchable: false },\n                ],\n                lengthMenu: &#91;25, 50, 100]\n            });\n        });\n    &lt;\/script&gt;\n&lt;\/body&gt;\n&lt;\/html&gt;<\/code><\/pre>\n\n\n\n<p>Finally, run the following command and view the result in your browser:<\/p>\n\n\n\n<pre class=\"wp-block-code has-black-color has-silver-blue-background-color has-text-color has-background has-link-color wp-elements-509111dc4a1cd4940146165f336bbec6\"><code>php artisan serve<\/code><\/pre>\n\n\n\n<p>Visit\u00a0http:\/\/&lt;hostname>:&lt;port>\/\u00a0to see the Yajra Datatables in action!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Welcome to our step-by-step guide on implementing Yajra DataTables in a Laravel 10 project. Yajra&hellip;<\/p>\n","protected":false},"author":5,"featured_media":728,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[28,1],"tags":[35,36,38,32,29,33,30,34,37,31],"class_list":["post-227","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-laravel","category-php","tag-ajax-requests","tag-backend-development","tag-data-table-in-laravel","tag-datatable-integration","tag-laravel-development","tag-laravel-packages","tag-php-development","tag-server-side-processing","tag-web-application-development","tag-yajra"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.4 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Yajra Data Tables Laravel 10 | Create Laravel Project<\/title>\n<meta name=\"description\" content=\"Extensive\u00a0instructions for implementing Yajra DataTables in a Laravel 10 project. A dynamic library titled Yajra DataTables allows the jQuery DataTables API to be easily integrated with Laravel.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.200oksolutions.com\/blog\/implementing-yajra-datatables-in-laravel-10-a-step-by-step-guide\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Yajra Data Tables Laravel 10 | Create Laravel Project\" \/>\n<meta property=\"og:description\" content=\"Extensive\u00a0instructions for implementing Yajra DataTables in a Laravel 10 project. A dynamic library titled Yajra DataTables allows the jQuery DataTables API to be easily integrated with Laravel.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.200oksolutions.com\/blog\/implementing-yajra-datatables-in-laravel-10-a-step-by-step-guide\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-01-10T09:23:33+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-12-04T07:44:09+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.200oksolutions.com\/blog\/wp-content\/uploads\/2024\/01\/yajra-datatables-in-Laravel-10-1.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"500\" \/>\n\t<meta property=\"og:image:height\" content=\"500\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"author\" content=\"Piyush Solanki\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Piyush Solanki\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Yajra Data Tables Laravel 10 | Create Laravel Project","description":"Extensive\u00a0instructions for implementing Yajra DataTables in a Laravel 10 project. A dynamic library titled Yajra DataTables allows the jQuery DataTables API to be easily integrated with Laravel.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.200oksolutions.com\/blog\/implementing-yajra-datatables-in-laravel-10-a-step-by-step-guide\/","og_locale":"en_US","og_type":"article","og_title":"Yajra Data Tables Laravel 10 | Create Laravel Project","og_description":"Extensive\u00a0instructions for implementing Yajra DataTables in a Laravel 10 project. A dynamic library titled Yajra DataTables allows the jQuery DataTables API to be easily integrated with Laravel.","og_url":"https:\/\/www.200oksolutions.com\/blog\/implementing-yajra-datatables-in-laravel-10-a-step-by-step-guide\/","article_published_time":"2024-01-10T09:23:33+00:00","article_modified_time":"2025-12-04T07:44:09+00:00","og_image":[{"width":500,"height":500,"url":"https:\/\/www.200oksolutions.com\/blog\/wp-content\/uploads\/2024\/01\/yajra-datatables-in-Laravel-10-1.webp","type":"image\/webp"}],"author":"Piyush Solanki","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Piyush Solanki","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.200oksolutions.com\/blog\/implementing-yajra-datatables-in-laravel-10-a-step-by-step-guide\/#article","isPartOf":{"@id":"https:\/\/www.200oksolutions.com\/blog\/implementing-yajra-datatables-in-laravel-10-a-step-by-step-guide\/"},"author":{"name":"Piyush Solanki","@id":"https:\/\/www.200oksolutions.com\/blog\/#\/schema\/person\/e07f6b8e3c9a90ce7b3b09427d26155e"},"headline":"Implementing Yajra DataTables in Laravel 10: A Step-by-Step Guide","datePublished":"2024-01-10T09:23:33+00:00","dateModified":"2025-12-04T07:44:09+00:00","mainEntityOfPage":{"@id":"https:\/\/www.200oksolutions.com\/blog\/implementing-yajra-datatables-in-laravel-10-a-step-by-step-guide\/"},"wordCount":292,"commentCount":0,"publisher":{"@id":"https:\/\/www.200oksolutions.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.200oksolutions.com\/blog\/implementing-yajra-datatables-in-laravel-10-a-step-by-step-guide\/#primaryimage"},"thumbnailUrl":"https:\/\/www.200oksolutions.com\/blog\/wp-content\/uploads\/2024\/01\/yajra-datatables-in-Laravel-10-1.webp","keywords":["AJAX","Backend Development","Data Table In Laravel","Data Table Integration","Laravel Development","Laravel Packages","PHP Development","ServerSide Processing","Web Application Development","Yajra"],"articleSection":["Laravel","PHP"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.200oksolutions.com\/blog\/implementing-yajra-datatables-in-laravel-10-a-step-by-step-guide\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.200oksolutions.com\/blog\/implementing-yajra-datatables-in-laravel-10-a-step-by-step-guide\/","url":"https:\/\/www.200oksolutions.com\/blog\/implementing-yajra-datatables-in-laravel-10-a-step-by-step-guide\/","name":"Yajra Data Tables Laravel 10 | Create Laravel Project","isPartOf":{"@id":"https:\/\/www.200oksolutions.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.200oksolutions.com\/blog\/implementing-yajra-datatables-in-laravel-10-a-step-by-step-guide\/#primaryimage"},"image":{"@id":"https:\/\/www.200oksolutions.com\/blog\/implementing-yajra-datatables-in-laravel-10-a-step-by-step-guide\/#primaryimage"},"thumbnailUrl":"https:\/\/www.200oksolutions.com\/blog\/wp-content\/uploads\/2024\/01\/yajra-datatables-in-Laravel-10-1.webp","datePublished":"2024-01-10T09:23:33+00:00","dateModified":"2025-12-04T07:44:09+00:00","description":"Extensive\u00a0instructions for implementing Yajra DataTables in a Laravel 10 project. A dynamic library titled Yajra DataTables allows the jQuery DataTables API to be easily integrated with Laravel.","breadcrumb":{"@id":"https:\/\/www.200oksolutions.com\/blog\/implementing-yajra-datatables-in-laravel-10-a-step-by-step-guide\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.200oksolutions.com\/blog\/implementing-yajra-datatables-in-laravel-10-a-step-by-step-guide\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.200oksolutions.com\/blog\/implementing-yajra-datatables-in-laravel-10-a-step-by-step-guide\/#primaryimage","url":"https:\/\/www.200oksolutions.com\/blog\/wp-content\/uploads\/2024\/01\/yajra-datatables-in-Laravel-10-1.webp","contentUrl":"https:\/\/www.200oksolutions.com\/blog\/wp-content\/uploads\/2024\/01\/yajra-datatables-in-Laravel-10-1.webp","width":500,"height":500,"caption":"yajra-datatables-in-Laravel-10"},{"@type":"BreadcrumbList","@id":"https:\/\/www.200oksolutions.com\/blog\/implementing-yajra-datatables-in-laravel-10-a-step-by-step-guide\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.200oksolutions.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Implementing Yajra DataTables in Laravel 10: A Step-by-Step Guide"}]},{"@type":"WebSite","@id":"https:\/\/www.200oksolutions.com\/blog\/#website","url":"https:\/\/www.200oksolutions.com\/blog\/","name":"Web Development, Software, and App Blog | 200OK Solutions","description":"","publisher":{"@id":"https:\/\/www.200oksolutions.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.200oksolutions.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.200oksolutions.com\/blog\/#organization","name":"Web Development Blog | Software Blog | App Blog","url":"https:\/\/www.200oksolutions.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.200oksolutions.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/200oksolutions.com\/blog\/wp-content\/uploads\/2025\/09\/200ok_logo-CGzMrWDu.png","contentUrl":"https:\/\/200oksolutions.com\/blog\/wp-content\/uploads\/2025\/09\/200ok_logo-CGzMrWDu.png","width":500,"height":191,"caption":"Web Development Blog | Software Blog | App Blog"},"image":{"@id":"https:\/\/www.200oksolutions.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.instagram.com\/200ok_solutions\/"]},{"@type":"Person","@id":"https:\/\/www.200oksolutions.com\/blog\/#\/schema\/person\/e07f6b8e3c9a90ce7b3b09427d26155e","name":"Piyush Solanki","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.200oksolutions.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/962a2b0b4db856e6851ec7d838597a0395adcaae9c0091d223de9942a4254461?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/962a2b0b4db856e6851ec7d838597a0395adcaae9c0091d223de9942a4254461?s=96&d=mm&r=g","caption":"Piyush Solanki"},"description":"Piyush is a seasoned PHP Tech Lead with 10+ years of experience architecting and delivering scalable web and mobile backend solutions for global brands and fast-growing SMEs. He specializes in PHP, MySQL, CodeIgniter, WordPress, and custom API development, helping businesses modernize legacy systems and launch secure, high-performance digital products. He collaborates closely with mobile teams building Android &amp; iOS apps , developing RESTful APIs, cloud integrations, and secure payment systems using platforms like Stripe, AWS S3, and OTP\/SMS gateways. His work extends across CMS customization, microservices-ready backend architectures, and smooth product deployments across Linux and cloud-based environments. Piyush also has a strong understanding of modern front-end technologies such as React and TypeScript, enabling him to contribute to full-stack development workflows and advanced admin panels. With a successful delivery track record in the UK market and experience building digital products for sectors like finance, hospitality, retail, consulting, and food services, Piyush is passionate about helping SMEs scale technology teams, improve operational efficiency, and accelerate innovation through backend excellence and digital tools.","url":"https:\/\/www.200oksolutions.com\/blog\/author\/piyush\/"}]}},"_links":{"self":[{"href":"https:\/\/www.200oksolutions.com\/blog\/wp-json\/wp\/v2\/posts\/227","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.200oksolutions.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.200oksolutions.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.200oksolutions.com\/blog\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/www.200oksolutions.com\/blog\/wp-json\/wp\/v2\/comments?post=227"}],"version-history":[{"count":36,"href":"https:\/\/www.200oksolutions.com\/blog\/wp-json\/wp\/v2\/posts\/227\/revisions"}],"predecessor-version":[{"id":533,"href":"https:\/\/www.200oksolutions.com\/blog\/wp-json\/wp\/v2\/posts\/227\/revisions\/533"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.200oksolutions.com\/blog\/wp-json\/wp\/v2\/media\/728"}],"wp:attachment":[{"href":"https:\/\/www.200oksolutions.com\/blog\/wp-json\/wp\/v2\/media?parent=227"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.200oksolutions.com\/blog\/wp-json\/wp\/v2\/categories?post=227"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.200oksolutions.com\/blog\/wp-json\/wp\/v2\/tags?post=227"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}