{"id":2135,"date":"2016-07-24T05:24:06","date_gmt":"2016-07-24T05:24:06","guid":{"rendered":"https:\/\/www.botreetechnologies.com\/blog\/?p=2135"},"modified":"2022-12-14T16:00:16","modified_gmt":"2022-12-14T10:30:16","slug":"solidus-how-to-install-and-write-extensions","status":"publish","type":"post","link":"https:\/\/www.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/","title":{"rendered":"Solidus: How to Install and Write Extensions in Rails App"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">What is Solidus?<\/h2>\n\n\n\n<p><a data-href=\"https:\/\/github.com\/solidusio\/solidus\" href=\"https:\/\/github.com\/solidusio\/solidus\" target=\"_blank\" rel=\"noopener noreferrer\"><b>Solidus<\/b><\/a>&nbsp;is a complete open source e-commerce solution built with&nbsp;<a href=\"https:\/\/www.botreetechnologies.com\/ruby-on-rails-development\" target=\"_blank\" rel=\"noreferrer noopener\">Ruby on Rails Development Framework<\/a> forked from&nbsp;<a href=\"https:\/\/www.botreetechnologies.com\/spree-commerce-development\" target=\"_blank\" rel=\"noreferrer noopener\"><b>Spree<\/b><\/a><b>&nbsp;2.4.<\/b><\/p>\n\n\n\n<p>You can know more about solidus at&nbsp;<a data-href=\"https:\/\/github.com\/solidusio\/solidus\" href=\"https:\/\/github.com\/solidusio\/solidus\">https:\/\/github.com\/solidusio\/solidus<\/a>&nbsp;and spree at&nbsp;<a data-href=\"https:\/\/en.wikipedia.org\/wiki\/Spree_Commerce\" href=\"https:\/\/en.wikipedia.org\/wiki\/Spree_Commerce\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/en.wikipedia.org\/wiki\/Spree_Commerce<\/a>&nbsp;and&nbsp;<a href=\"https:\/\/spreecommerce.org\/\">https:\/\/spreecommerce.org<\/a><\/p>\n\n\n\n<p>Solidus provides great deal of built-in functionalities. Because of the different client requirements sometimes we need to customise solidus.<\/p>\n\n\n\n<p>Here is the description of how to install solidus and write extension in it.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Solidus Installation<\/h3>\n\n\n\n<p>Create new rails project. PostgreSQL database was used here, you can choose as per your requirements.<br><code>rails new solidus-example&nbsp;- database=postgresql<\/code><br>Add the following to gemfile of your rails application.<br><code>gem 'solidus'<\/code><\/p>\n\n\n\n<p>gem &#8216;solidus_auth_devise&#8217;<br>As we have added the gems to the gemfile we need to update bundle.<br><code>$ bundle install<\/code><br>In case you encounter nokogiri error you can refer to this link:&nbsp;<a href=\"http:\/\/stackoverflow.com\/a\/20006530\" target=\"_blank\" rel=\"noopener noreferrer\" data-href=\"http:\/\/stackoverflow.com\/a\/20006530\">http:\/\/stackoverflow.com\/a\/20006530<\/a><\/p>\n\n\n\n<p>Add the necessary configurations in the config\/database.yml like username password.<\/p>\n\n\n\n<p><script src=\"https:\/\/gist.github.com\/AnkurVyas-BTC\/6a5d4b21d5a198024af885a248a74958.js\"><\/script><\/p>\n\n\n\n<p>Create the database.<br><code>$ bundle exec rake db:create<\/code><br>After this you need to install spree.<br><code>$ bundle exec rails g spree:install<\/code><br>It will ask for email and password (enter you custom) else go with the default ones.<br><code>$ bundle exec rake railties:install:migrations<\/code><br>Now your solidus application is ready to be used. Now you can start your rails server and start exploring the feature and options available.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Creating Solidus Extension<\/h3>\n\n\n\n<p>To know more about extensions and how to write one in Spree refer&nbsp;http:\/\/guides.spreecommerce.org\/developer\/extensions_tutorial.html<\/p>\n\n\n\n<p>Unlike Spree, it is not pretty straight forward in soldius, we need to add gem to our file.<br><code>gem 'solidus_cmd'<\/code><br>And then we need to update bundle.<br><code>$ bundle install<\/code><br>Now we need to move one directory back from the folder of our rails application and run following commands in the console.<br><code>$ cd.. # To move one directory back in Linux systems<\/code><\/p>\n\n\n\n<p>$ gem install solidus_cmd<\/p>\n\n\n\n<p>$ solidus extension my_extension<\/p>\n\n\n\n<p>$ cd solidus_my_extension<\/p>\n\n\n\n<p>$ bundle install<br>Make sure you are now in solidus_my_extension folder. All the customisation that we need to do in solidus we must do it in this folder without touching the solidus-master code.<\/p>\n\n\n\n<p>Now let&#8217;s add new column named as&nbsp;<code>sale_price<\/code>&nbsp;in the&nbsp;<code>Spree::Variant<\/code>&nbsp;model.<br><code>bundle <b>exec<\/b> rails g migration add_sale_price_to_spree_variants sale_price<b>:<\/b>decimal<\/code><br><b>NOTE:<\/b>&nbsp;Don&#8217;t run <code>rake db:migrate<\/code> in this folder.<\/p>\n\n\n\n<p>First we need to update the. gemspec file of this extension. We need to add author, description, summary and email in. gemspec file. Below is sample.<\/p>\n\n\n\n<p><script src=\"https:\/\/gist.github.com\/AnkurVyas-BTC\/cf6e6b0e09d80cef2175bb7288030836.js\"><\/script><\/p>\n\n\n\n<p>Now move to the&nbsp;<b>solidus-example<\/b>&nbsp;folder.<\/p>\n\n\n\n<p>Now we need to include our created extension in our main rails application. Add the following to the gemfile.<br><code>gem 'solidus_my_extension', :path =&gt; '..\/solidus_my_extension'<\/code><br>Then run following commands.<br><code>$ bundle install<br>\n$ rails g solidus_my_extension:install<\/code><br>It will prompt you run the migrations type &#8216;Y&#8217; and after the successful migration completion you will have&nbsp;<b>sale_price<\/b> added.<\/p>\n\n\n\n<p>For the customisation of the Views and Controller you can follow the steps as described after&nbsp;http:\/\/guides.spreecommerce.org\/developer\/extensions_tutorial.html#adding-a-controller-action-to-homecontroller<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p><i><b># NOTE: after every change in the extension we need to restart solidus-example server<\/b><\/i><\/p><\/blockquote>\n\n\n\n<p>That&#8217;s it!<\/p>\n\n\n\n<p>You can get more information about solidus and spree from the links in the references section.<\/p>\n\n\n\n<p>Thank you for reading!<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.botreetechnologies.com\/ruby-on-rails-development\"><b>Click here for more<\/b> details&#8230;<\/a><\/h3>\n\n\n\n<p>At<a href=\"https:\/\/www.botreetechnologies.com\/\"> BoTree Technologies<\/a>, we build enterprise applications with our RoR team of 25+ engineers.<\/p>\n\n\n\n<p>We also specialize in Python, RPA, AI, Django, JavaScript and ReactJS.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/www.botreetechnologies.com\/contact\">Consulting is free<\/a> &#8211; let us help you grow!<\/h3>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">References:<\/h3>\n\n\n\n<div>\n<blockquote><p><a href=\"https:\/\/github.com\/solidusio\/solidus\" target=\"_blank\" rel=\"noopener noreferrer\"><b>solidusio\/solidus<\/b><br><i>solidus &#8211; Solidus, Rails eCommerce System<\/i><\/a><\/p><\/blockquote>\n<blockquote><p><a href=\"https:\/\/github.com\/solidusio\/solidus\" target=\"_blank\" rel=\"noopener noreferrer\">github.com<\/a><\/p><\/blockquote>\n<blockquote><p><a href=\"https:\/\/github.com\/solidusio\/solidus_cmd\" target=\"_blank\" rel=\"noopener noreferrer\"><b>solidusio\/solidus_cmd<\/b><br><i>Contribute to solidus_cmd development by creating an account on GitHub.<\/i><\/a><\/p><\/blockquote>\n<blockquote><p><a href=\"https:\/\/github.com\/solidusio\/solidus_cmd\" target=\"_blank\" rel=\"noopener noreferrer\">github.com<\/a><\/p><\/blockquote>\n<blockquote><p><b>Extensions &#8211; Developer Guide | Spree Commerce<\/b><br><i>This tutorial continues where we left off in the Getting Started tutorial. Now that we have a basic Spree store up and&#8230;<\/i><\/p><\/blockquote>\n<blockquote><p>guides.spreecommerce.org<\/p><\/blockquote>\n<blockquote><p><a href=\"http:\/\/ashkamel.com\/solidus-guides\/\" target=\"_blank\" rel=\"noopener noreferrer\"><b>Introduction &#8211; Solidus Guides<\/b><br><i>Hosted on Github. The Solidus Guides is based on from DOCter from CFPB.<\/i><\/a><\/p><\/blockquote>\n<blockquote><p><a href=\"http:\/\/ashkamel.com\/solidus-guides\/\" target=\"_blank\" rel=\"noopener noreferrer\">ashkamel.com<\/a><\/p><\/blockquote>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>What is Solidus? Solidus&nbsp;is a complete open source e-commerce solution&#8230;<\/p>\n","protected":false},"author":9,"featured_media":13978,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[73,10],"tags":[],"class_list":["post-2135","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ruby-on-rails","category-technology"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>How to Install and Write Extensions in Solidus - BoTree Technologies<\/title>\n<meta name=\"description\" content=\"This Ruby on Rails development guide on installing Solidus will help you integrate ecommerce functionalities in your app. Learn how to do it.\" \/>\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.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to Install and Write Extensions in Solidus - BoTree Technologies\" \/>\n<meta property=\"og:description\" content=\"This Ruby on Rails development guide on installing Solidus will help you integrate ecommerce functionalities in your app. Learn how to do it.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/\" \/>\n<meta property=\"og:site_name\" content=\"BoTree Technologies\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/BoTreeTechnologies\/\" \/>\n<meta property=\"article:published_time\" content=\"2016-07-24T05:24:06+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-12-14T10:30:16+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.botreetechnologies.com\/blog\/wp-content\/uploads\/2016\/07\/solidus-how-to-install-and-write-extensions.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1920\" \/>\n\t<meta property=\"og:image:height\" content=\"1280\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Ankur Vyas\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@BoTreeTech\" \/>\n<meta name=\"twitter:site\" content=\"@BoTreeTech\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Ankur Vyas\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/\"},\"author\":{\"name\":\"Ankur Vyas\",\"@id\":\"https:\/\/www.botreetechnologies.com\/blog\/#\/schema\/person\/aa180b4d8d933949f15aba97d8d138a5\"},\"headline\":\"Solidus: How to Install and Write Extensions in Rails App\",\"datePublished\":\"2016-07-24T05:24:06+00:00\",\"dateModified\":\"2022-12-14T10:30:16+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/\"},\"wordCount\":619,\"commentCount\":0,\"image\":{\"@id\":\"https:\/\/www.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.botreetechnologies.com\/blog\/wp-content\/uploads\/2016\/07\/solidus-how-to-install-and-write-extensions.jpg\",\"articleSection\":[\"Ruby on Rails\",\"Technology\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/\",\"url\":\"https:\/\/www.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/\",\"name\":\"How to Install and Write Extensions in Solidus - BoTree Technologies\",\"isPartOf\":{\"@id\":\"https:\/\/www.botreetechnologies.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.botreetechnologies.com\/blog\/wp-content\/uploads\/2016\/07\/solidus-how-to-install-and-write-extensions.jpg\",\"datePublished\":\"2016-07-24T05:24:06+00:00\",\"dateModified\":\"2022-12-14T10:30:16+00:00\",\"author\":{\"@id\":\"https:\/\/www.botreetechnologies.com\/blog\/#\/schema\/person\/aa180b4d8d933949f15aba97d8d138a5\"},\"description\":\"This Ruby on Rails development guide on installing Solidus will help you integrate ecommerce functionalities in your app. Learn how to do it.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/#primaryimage\",\"url\":\"https:\/\/www.botreetechnologies.com\/blog\/wp-content\/uploads\/2016\/07\/solidus-how-to-install-and-write-extensions.jpg\",\"contentUrl\":\"https:\/\/www.botreetechnologies.com\/blog\/wp-content\/uploads\/2016\/07\/solidus-how-to-install-and-write-extensions.jpg\",\"width\":1920,\"height\":1280,\"caption\":\"What is Solidus?\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.botreetechnologies.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Solidus: How to Install and Write Extensions in Rails App\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.botreetechnologies.com\/blog\/#website\",\"url\":\"https:\/\/www.botreetechnologies.com\/blog\/\",\"name\":\"BoTree Technologies\",\"description\":\"Committed to inspire generation.\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.botreetechnologies.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.botreetechnologies.com\/blog\/#\/schema\/person\/aa180b4d8d933949f15aba97d8d138a5\",\"name\":\"Ankur Vyas\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.botreetechnologies.com\/blog\/wp-content\/uploads\/2020\/10\/ankur-vyas-1-150x150.png\",\"url\":\"https:\/\/www.botreetechnologies.com\/blog\/wp-content\/uploads\/2020\/10\/ankur-vyas-1-150x150.png\",\"contentUrl\":\"https:\/\/www.botreetechnologies.com\/blog\/wp-content\/uploads\/2020\/10\/ankur-vyas-1-150x150.png\",\"caption\":\"Ankur Vyas\"},\"description\":\"Ankur is a Ruby on Rails Developer and Practice Lead JavaScript. He loves Ruby, JavaScript, reading and writing blogs, problem-solving and taking ownership of work. Apart from coding he likes to listen to songs, gaming and traveling.\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How to Install and Write Extensions in Solidus - BoTree Technologies","description":"This Ruby on Rails development guide on installing Solidus will help you integrate ecommerce functionalities in your app. Learn how to do it.","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.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/","og_locale":"en_US","og_type":"article","og_title":"How to Install and Write Extensions in Solidus - BoTree Technologies","og_description":"This Ruby on Rails development guide on installing Solidus will help you integrate ecommerce functionalities in your app. Learn how to do it.","og_url":"https:\/\/www.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/","og_site_name":"BoTree Technologies","article_publisher":"https:\/\/www.facebook.com\/BoTreeTechnologies\/","article_published_time":"2016-07-24T05:24:06+00:00","article_modified_time":"2022-12-14T10:30:16+00:00","og_image":[{"width":1920,"height":1280,"url":"https:\/\/www.botreetechnologies.com\/blog\/wp-content\/uploads\/2016\/07\/solidus-how-to-install-and-write-extensions.jpg","type":"image\/jpeg"}],"author":"Ankur Vyas","twitter_card":"summary_large_image","twitter_creator":"@BoTreeTech","twitter_site":"@BoTreeTech","twitter_misc":{"Written by":"Ankur Vyas","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/#article","isPartOf":{"@id":"https:\/\/www.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/"},"author":{"name":"Ankur Vyas","@id":"https:\/\/www.botreetechnologies.com\/blog\/#\/schema\/person\/aa180b4d8d933949f15aba97d8d138a5"},"headline":"Solidus: How to Install and Write Extensions in Rails App","datePublished":"2016-07-24T05:24:06+00:00","dateModified":"2022-12-14T10:30:16+00:00","mainEntityOfPage":{"@id":"https:\/\/www.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/"},"wordCount":619,"commentCount":0,"image":{"@id":"https:\/\/www.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/#primaryimage"},"thumbnailUrl":"https:\/\/www.botreetechnologies.com\/blog\/wp-content\/uploads\/2016\/07\/solidus-how-to-install-and-write-extensions.jpg","articleSection":["Ruby on Rails","Technology"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/","url":"https:\/\/www.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/","name":"How to Install and Write Extensions in Solidus - BoTree Technologies","isPartOf":{"@id":"https:\/\/www.botreetechnologies.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/#primaryimage"},"image":{"@id":"https:\/\/www.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/#primaryimage"},"thumbnailUrl":"https:\/\/www.botreetechnologies.com\/blog\/wp-content\/uploads\/2016\/07\/solidus-how-to-install-and-write-extensions.jpg","datePublished":"2016-07-24T05:24:06+00:00","dateModified":"2022-12-14T10:30:16+00:00","author":{"@id":"https:\/\/www.botreetechnologies.com\/blog\/#\/schema\/person\/aa180b4d8d933949f15aba97d8d138a5"},"description":"This Ruby on Rails development guide on installing Solidus will help you integrate ecommerce functionalities in your app. Learn how to do it.","breadcrumb":{"@id":"https:\/\/www.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/#primaryimage","url":"https:\/\/www.botreetechnologies.com\/blog\/wp-content\/uploads\/2016\/07\/solidus-how-to-install-and-write-extensions.jpg","contentUrl":"https:\/\/www.botreetechnologies.com\/blog\/wp-content\/uploads\/2016\/07\/solidus-how-to-install-and-write-extensions.jpg","width":1920,"height":1280,"caption":"What is Solidus?"},{"@type":"BreadcrumbList","@id":"https:\/\/www.botreetechnologies.com\/blog\/solidus-how-to-install-and-write-extensions\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.botreetechnologies.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Solidus: How to Install and Write Extensions in Rails App"}]},{"@type":"WebSite","@id":"https:\/\/www.botreetechnologies.com\/blog\/#website","url":"https:\/\/www.botreetechnologies.com\/blog\/","name":"BoTree Technologies","description":"Committed to inspire generation.","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.botreetechnologies.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.botreetechnologies.com\/blog\/#\/schema\/person\/aa180b4d8d933949f15aba97d8d138a5","name":"Ankur Vyas","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.botreetechnologies.com\/blog\/wp-content\/uploads\/2020\/10\/ankur-vyas-1-150x150.png","url":"https:\/\/www.botreetechnologies.com\/blog\/wp-content\/uploads\/2020\/10\/ankur-vyas-1-150x150.png","contentUrl":"https:\/\/www.botreetechnologies.com\/blog\/wp-content\/uploads\/2020\/10\/ankur-vyas-1-150x150.png","caption":"Ankur Vyas"},"description":"Ankur is a Ruby on Rails Developer and Practice Lead JavaScript. He loves Ruby, JavaScript, reading and writing blogs, problem-solving and taking ownership of work. Apart from coding he likes to listen to songs, gaming and traveling."}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.botreetechnologies.com\/blog\/wp-json\/wp\/v2\/posts\/2135","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.botreetechnologies.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.botreetechnologies.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.botreetechnologies.com\/blog\/wp-json\/wp\/v2\/users\/9"}],"replies":[{"embeddable":true,"href":"https:\/\/www.botreetechnologies.com\/blog\/wp-json\/wp\/v2\/comments?post=2135"}],"version-history":[{"count":4,"href":"https:\/\/www.botreetechnologies.com\/blog\/wp-json\/wp\/v2\/posts\/2135\/revisions"}],"predecessor-version":[{"id":18290,"href":"https:\/\/www.botreetechnologies.com\/blog\/wp-json\/wp\/v2\/posts\/2135\/revisions\/18290"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.botreetechnologies.com\/blog\/wp-json\/wp\/v2\/media\/13978"}],"wp:attachment":[{"href":"https:\/\/www.botreetechnologies.com\/blog\/wp-json\/wp\/v2\/media?parent=2135"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.botreetechnologies.com\/blog\/wp-json\/wp\/v2\/categories?post=2135"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.botreetechnologies.com\/blog\/wp-json\/wp\/v2\/tags?post=2135"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}