{"id":4205,"date":"2023-11-04T23:14:08","date_gmt":"2023-11-04T23:14:08","guid":{"rendered":"http:\/\/localhost:10003\/how-to-build-a-shopping-cart-with-vue-js-and-firebase\/"},"modified":"2023-11-05T05:47:56","modified_gmt":"2023-11-05T05:47:56","slug":"how-to-build-a-shopping-cart-with-vue-js-and-firebase","status":"publish","type":"post","link":"http:\/\/localhost:10003\/how-to-build-a-shopping-cart-with-vue-js-and-firebase\/","title":{"rendered":"How to Build a Shopping Cart with Vue.js and Firebase"},"content":{"rendered":"

In this tutorial, we will walk through the process of building a shopping cart using Vue.js and Firebase. Firebase is a powerful backend-as-a-service platform that provides a real-time database and authentication for our application. We will utilize the real-time nature of Firebase to create a dynamic shopping cart that updates in real-time as items are added or removed.<\/p>\n

Here’s what we will cover in this tutorial:<\/p>\n

    \n
  1. Setting up Firebase project<\/li>\n
  2. Creating the Vue.js project<\/li>\n
  3. Designing the shopping cart<\/li>\n
  4. Implementing the shopping cart functionality<\/li>\n
  5. Connecting the shopping cart to Firebase<\/li>\n
  6. Testing the shopping cart<\/li>\n
  7. Conclusion<\/li>\n<\/ol>\n

    Let’s get started!<\/p>\n

    1. Setting up Firebase project<\/h2>\n

    To use Firebase in our project, we first need to create a new Firebase project. Follow these steps to set up your Firebase project:<\/p>\n

      \n
    1. Go to the Firebase Console<\/a> and create a new project.<\/li>\n
    2. In the project settings, navigate to the “General” tab and click on “Add Firebase to your web app”.<\/li>\n
    3. Copy the provided configuration object, as we will need it later in our Vue.js application.<\/li>\n<\/ol>\n

      2. Creating the Vue.js project<\/h2>\n

      Next, we need to set up a new Vue.js project using the Vue CLI. If you haven’t already installed the Vue CLI, you can install it globally using the following command:<\/p>\n

      $ npm install -g @vue\/cli\n<\/code><\/pre>\n

      Once the Vue CLI is installed, create a new Vue.js project using the following command:<\/p>\n

      $ vue create shopping-cart\n<\/code><\/pre>\n

      Follow the prompts to select the options for your project. Once the project is created, navigate into the project directory:<\/p>\n

      $ cd shopping-cart\n<\/code><\/pre>\n

      Now, you can run the project locally using the following command:<\/p>\n

      $ npm run serve\n<\/code><\/pre>\n

      Your Vue.js project should now be running locally and accessible at `http:\/\/localhost:8080\/`.<\/p>\n

      3. Designing the shopping cart<\/h2>\n

      Before we start implementing the shopping cart functionality, let’s design the user interface for our shopping cart. Create a new file called Cart.vue<\/code> in the src\/components<\/code> directory and add the following code:<\/p>\n

      <template>\n  <div class=\"cart\">\n    <h2>Your Shopping Cart<\/h2>\n    <div v-if=\"items.length === 0\" class=\"empty-cart\">\n      Your cart is empty.\n    <\/div>\n    <div v-else>\n      <div v-for=\"item in items\" :key=\"item.id\" class=\"cart-item\">\n        <div class=\"item-info\">\n          <h3>{{ item.name }}<\/h3>\n          <p>Price: {{ item.price }}<\/p>\n          <p>Quantity: {{ item.quantity }}<\/p>\n        <\/div>\n        <button @click=\"removeItem(item.id)\">Remove<\/button>\n      <\/div>\n      <div class=\"total\">\n        <h3>Total: {{ total }}<\/h3>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/template>\n\n<script>\nexport default {\n  data() {\n    return {\n      items: []\n    };\n  },\n  computed: {\n    total() {\n      return this.items.reduce((acc, item) => acc + item.price * item.quantity, 0);\n    }\n  },\n  methods: {\n    removeItem(itemId) {\n      \/\/ Implement code to remove item from cart\n    }\n  }\n};\n<\/script>\n\n<style scoped>\n\/* Add your own styles here *\/\n<\/style>\n<\/code><\/pre>\n

      This code defines the structure and layout of our shopping cart component. It uses Vue.js directives (v-if<\/code>, v-else<\/code>, v-for<\/code>) to conditionally render the content based on the state of the shopping cart.<\/p>\n

      4. Implementing the shopping cart functionality<\/h2>\n

      Now, let’s implement the shopping cart functionality in Vue.js. Open the App.vue<\/code> file in the src<\/code> directory and update the template code to include the Cart<\/code> component:<\/p>\n

      <template>\n  <div id=\"app\">\n    <h1>Vue.js Shopping Cart<\/h1>\n    <div class=\"product-list\">\n      <!-- Render product list -->\n    <\/div>\n    <Cart \/>\n  <\/div>\n<\/template>\n<\/code><\/pre>\n

      Next, we need to define the product list in the data<\/code> object:<\/p>\n

      data() {\n  return {\n    products: [\n      {\n        id: 1,\n        name: \"Product 1\",\n        price: 10\n      },\n      {\n        id: 2,\n        name: \"Product 2\",\n        price: 15\n      },\n      {\n        id: 3,\n        name: \"Product 3\",\n        price: 20\n      }\n    ]\n  };\n}\n<\/code><\/pre>\n

      We also need to import the Cart<\/code> component in the App.vue<\/code> file:<\/p>\n

      import Cart from \"@\/components\/Cart.vue\";\n\nexport default {\n  components: {\n    Cart\n  },\n  \/\/ Rest of the code\n};\n<\/code><\/pre>\n

      At this point, our shopping cart component is ready for implementation.<\/p>\n

      5. Connecting the shopping cart to Firebase<\/h2>\n

      To connect the shopping cart to Firebase, we will use the Firebase Realtime Database to store and retrieve the cart items in real-time.<\/p>\n

      First, install the Firebase module using the following command:<\/p>\n

      $ npm install firebase\n<\/code><\/pre>\n

      Create a new file called firebase.js<\/code> in the src<\/code> directory and add the following code:<\/p>\n

      import firebase from \"firebase\/app\";\nimport \"firebase\/database\";\n\n\/\/ Your Firebase configuration\nconst firebaseConfig = {\n  \/\/ Add your project configuration here\n};\n\n\/\/ Initialize Firebase\nfirebase.initializeApp(firebaseConfig);\n\n\/\/ Export the Firebase database module\nexport default firebase.database();\n<\/code><\/pre>\n

      Replace the firebaseConfig<\/code> object with the configuration object you copied from the Firebase console earlier.<\/p>\n

      Now, we can use the Firebase database module to retrieve and update the shopping cart items.<\/p>\n

      Update the Cart.vue<\/code> component with the following code:<\/p>\n

      <script>\nimport db from \"..\/firebase\";\n\nexport default {\n  data() {\n    return {\n      items: []\n    };\n  },\n  computed: {\n    total() {\n      return this.items.reduce((acc, item) => acc + item.price * item.quantity, 0);\n    }\n  },\n  methods: {\n    removeItem(itemId) {\n      const index = this.items.findIndex(item => item.id === itemId);\n      if (index !== -1) {\n        this.items.splice(index, 1);\n        db.ref(\"cart\").set(this.items);\n      }\n    }\n  },\n  created() {\n    db.ref(\"cart\").on(\"value\", snapshot => {\n      this.items = snapshot.val() || [];\n    });\n  }\n};\n<\/script>\n<\/code><\/pre>\n

      The created<\/code> lifecycle hook is used to listen for changes in the Firebase database and update the items<\/code> array accordingly. The removeItem<\/code> method is used to remove an item from the cart and update the Firebase database.<\/p>\n

      6. Testing the shopping cart<\/h2>\n

      To test the shopping cart functionality, let’s add a button to add products to the cart in the ProductList<\/code> component.<\/p>\n

      Open the App.vue<\/code> file and update the template code to include the product list and add the button:<\/p>\n

      <template>\n  <div id=\"app\">\n    <h1>Vue.js Shopping Cart<\/h1>\n    <div class=\"product-list\">\n      <div v-for=\"product in products\" :key=\"product.id\" class=\"product\">\n        <h3>{{ product.name }}<\/h3>\n        <p>Price: {{ product.price }}<\/p>\n        <button @click=\"addItem(product.id)\">Add to Cart<\/button>\n      <\/div>\n    <\/div>\n    <Cart \/>\n  <\/div>\n<\/template>\n<\/code><\/pre>\n

      Add the addItem<\/code> method to the App.vue<\/code> component:<\/p>\n

      methods: {\n  addItem(productId) {\n    const product = this.products.find(product => product.id === productId);\n    if (product) {\n      const item = {\n        id: product.id,\n        name: product.name,\n        price: product.price,\n        quantity: 1\n      };\n      db.ref(\"cart\").push(item);\n    }\n  }\n}\n<\/code><\/pre>\n

      This method retrieves the selected product from the products<\/code> array, creates a new item object with the required properties, and pushes it to the Firebase database.<\/p>\n

      Now, when you click the “Add to Cart” button, the item will be added to the cart and reflected in the shopping cart component.<\/p>\n

      7. Conclusion<\/h2>\n

      In this tutorial, we have learned how to build a shopping cart using Vue.js and Firebase. We set up a new Firebase project, created a Vue.js project, designed the shopping cart component, implemented the shopping cart functionality, connected the shopping cart to Firebase, and tested the shopping cart.<\/p>\n

      You can further enhance the shopping cart by adding features like updating the quantity of items, implementing user authentication, and integrating with a payment gateway. Feel free to customize and expand on the code to meet the specific requirements of your application.<\/p>\n

      You can find the complete source code for this tutorial on GitHub<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"

      In this tutorial, we will walk through the process of building a shopping cart using Vue.js and Firebase. Firebase is a powerful backend-as-a-service platform that provides a real-time database and authentication for our application. We will utilize the real-time nature of Firebase to create a dynamic shopping cart that updates Continue Reading<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","footnotes":""},"categories":[1],"tags":[1337,34,50,1645,156,749,49,594,773],"yoast_head":"\nHow to Build a Shopping Cart with Vue.js and Firebase - Pantherax Blogs<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"http:\/\/localhost:10003\/how-to-build-a-shopping-cart-with-vue-js-and-firebase\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to Build a Shopping Cart with Vue.js and Firebase\" \/>\n<meta property=\"og:description\" content=\"In this tutorial, we will walk through the process of building a shopping cart using Vue.js and Firebase. Firebase is a powerful backend-as-a-service platform that provides a real-time database and authentication for our application. We will utilize the real-time nature of Firebase to create a dynamic shopping cart that updates Continue Reading\" \/>\n<meta property=\"og:url\" content=\"http:\/\/localhost:10003\/how-to-build-a-shopping-cart-with-vue-js-and-firebase\/\" \/>\n<meta property=\"og:site_name\" content=\"Pantherax Blogs\" \/>\n<meta property=\"article:published_time\" content=\"2023-11-04T23:14:08+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-11-05T05:47:56+00:00\" \/>\n<meta name=\"author\" content=\"Panther\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Panther\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\n\t \"@context\": \"https:\/\/schema.org\",\n\t \"@graph\": [\n\t {\n\t \"@type\": \"Article\",\n\t \"@id\": \"http:\/\/localhost:10003\/how-to-build-a-shopping-cart-with-vue-js-and-firebase\/#article\",\n\t \"isPartOf\": {\n\t \"@id\": \"http:\/\/localhost:10003\/how-to-build-a-shopping-cart-with-vue-js-and-firebase\/\"\n\t },\n\t \"author\": {\n\t \"name\": \"Panther\",\n\t \"@id\": \"http:\/\/localhost:10003\/#\/schema\/person\/b63d816f4964b163e53cbbcffaa0f3d7\"\n\t },\n\t \"headline\": \"How to Build a Shopping Cart with Vue.js and Firebase\",\n\t \"datePublished\": \"2023-11-04T23:14:08+00:00\",\n\t \"dateModified\": \"2023-11-05T05:47:56+00:00\",\n\t \"mainEntityOfPage\": {\n\t \"@id\": \"http:\/\/localhost:10003\/how-to-build-a-shopping-cart-with-vue-js-and-firebase\/\"\n\t },\n\t \"wordCount\": 734,\n\t \"publisher\": {\n\t \"@id\": \"http:\/\/localhost:10003\/#organization\"\n\t },\n\t \"keywords\": [\n\t \"\\\"e-commerce\\\"\",\n\t \"\\\"Firebase\\\"\",\n\t \"\\\"Front-end development\\\"]\",\n\t \"\\\"full-stack development\\\"\",\n\t \"\\\"JavaScript\\\"\",\n\t \"\\\"web application development\\\"\",\n\t \"\\\"Web development\\\"\",\n\t \"[\\\"shopping cart\\\"\",\n\t \"[\\\"Vue.js\\\"\"\n\t ],\n\t \"inLanguage\": \"en-US\"\n\t },\n\t {\n\t \"@type\": \"WebPage\",\n\t \"@id\": \"http:\/\/localhost:10003\/how-to-build-a-shopping-cart-with-vue-js-and-firebase\/\",\n\t \"url\": \"http:\/\/localhost:10003\/how-to-build-a-shopping-cart-with-vue-js-and-firebase\/\",\n\t \"name\": \"How to Build a Shopping Cart with Vue.js and Firebase - Pantherax Blogs\",\n\t \"isPartOf\": {\n\t \"@id\": \"http:\/\/localhost:10003\/#website\"\n\t },\n\t \"datePublished\": \"2023-11-04T23:14:08+00:00\",\n\t \"dateModified\": \"2023-11-05T05:47:56+00:00\",\n\t \"breadcrumb\": {\n\t \"@id\": \"http:\/\/localhost:10003\/how-to-build-a-shopping-cart-with-vue-js-and-firebase\/#breadcrumb\"\n\t },\n\t \"inLanguage\": \"en-US\",\n\t \"potentialAction\": [\n\t {\n\t \"@type\": \"ReadAction\",\n\t \"target\": [\n\t \"http:\/\/localhost:10003\/how-to-build-a-shopping-cart-with-vue-js-and-firebase\/\"\n\t ]\n\t }\n\t ]\n\t },\n\t {\n\t \"@type\": \"BreadcrumbList\",\n\t \"@id\": \"http:\/\/localhost:10003\/how-to-build-a-shopping-cart-with-vue-js-and-firebase\/#breadcrumb\",\n\t \"itemListElement\": [\n\t {\n\t \"@type\": \"ListItem\",\n\t \"position\": 1,\n\t \"name\": \"Home\",\n\t \"item\": \"http:\/\/localhost:10003\/\"\n\t },\n\t {\n\t \"@type\": \"ListItem\",\n\t \"position\": 2,\n\t \"name\": \"How to Build a Shopping Cart with Vue.js and Firebase\"\n\t }\n\t ]\n\t },\n\t {\n\t \"@type\": \"WebSite\",\n\t \"@id\": \"http:\/\/localhost:10003\/#website\",\n\t \"url\": \"http:\/\/localhost:10003\/\",\n\t \"name\": \"Pantherax Blogs\",\n\t \"description\": \"\",\n\t \"publisher\": {\n\t \"@id\": \"http:\/\/localhost:10003\/#organization\"\n\t },\n\t \"potentialAction\": [\n\t {\n\t \"@type\": \"SearchAction\",\n\t \"target\": {\n\t \"@type\": \"EntryPoint\",\n\t \"urlTemplate\": \"http:\/\/localhost:10003\/?s={search_term_string}\"\n\t },\n\t \"query-input\": \"required name=search_term_string\"\n\t }\n\t ],\n\t \"inLanguage\": \"en-US\"\n\t },\n\t {\n\t \"@type\": \"Organization\",\n\t \"@id\": \"http:\/\/localhost:10003\/#organization\",\n\t \"name\": \"Pantherax Blogs\",\n\t \"url\": \"http:\/\/localhost:10003\/\",\n\t \"logo\": {\n\t \"@type\": \"ImageObject\",\n\t \"inLanguage\": \"en-US\",\n\t \"@id\": \"http:\/\/localhost:10003\/#\/schema\/logo\/image\/\",\n\t \"url\": \"http:\/\/localhost:10003\/wp-content\/uploads\/2023\/11\/cropped-9e7721cb-2d62-4f72-ab7f-7d1d8db89226.jpeg\",\n\t \"contentUrl\": \"http:\/\/localhost:10003\/wp-content\/uploads\/2023\/11\/cropped-9e7721cb-2d62-4f72-ab7f-7d1d8db89226.jpeg\",\n\t \"width\": 1024,\n\t \"height\": 1024,\n\t \"caption\": \"Pantherax Blogs\"\n\t },\n\t \"image\": {\n\t \"@id\": \"http:\/\/localhost:10003\/#\/schema\/logo\/image\/\"\n\t }\n\t },\n\t {\n\t \"@type\": \"Person\",\n\t \"@id\": \"http:\/\/localhost:10003\/#\/schema\/person\/b63d816f4964b163e53cbbcffaa0f3d7\",\n\t \"name\": \"Panther\",\n\t \"image\": {\n\t \"@type\": \"ImageObject\",\n\t \"inLanguage\": \"en-US\",\n\t \"@id\": \"http:\/\/localhost:10003\/#\/schema\/person\/image\/\",\n\t \"url\": \"http:\/\/2.gravatar.com\/avatar\/b8c0eda5a49f8f31ec32d0a0f9d6f838?s=96&d=mm&r=g\",\n\t \"contentUrl\": \"http:\/\/2.gravatar.com\/avatar\/b8c0eda5a49f8f31ec32d0a0f9d6f838?s=96&d=mm&r=g\",\n\t \"caption\": \"Panther\"\n\t },\n\t \"sameAs\": [\n\t \"http:\/\/localhost:10003\"\n\t ],\n\t \"url\": \"http:\/\/localhost:10003\/author\/pepethefrog\/\"\n\t }\n\t ]\n\t}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How to Build a Shopping Cart with Vue.js and Firebase - Pantherax Blogs","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":"http:\/\/localhost:10003\/how-to-build-a-shopping-cart-with-vue-js-and-firebase\/","og_locale":"en_US","og_type":"article","og_title":"How to Build a Shopping Cart with Vue.js and Firebase","og_description":"In this tutorial, we will walk through the process of building a shopping cart using Vue.js and Firebase. Firebase is a powerful backend-as-a-service platform that provides a real-time database and authentication for our application. We will utilize the real-time nature of Firebase to create a dynamic shopping cart that updates Continue Reading","og_url":"http:\/\/localhost:10003\/how-to-build-a-shopping-cart-with-vue-js-and-firebase\/","og_site_name":"Pantherax Blogs","article_published_time":"2023-11-04T23:14:08+00:00","article_modified_time":"2023-11-05T05:47:56+00:00","author":"Panther","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Panther","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"http:\/\/localhost:10003\/how-to-build-a-shopping-cart-with-vue-js-and-firebase\/#article","isPartOf":{"@id":"http:\/\/localhost:10003\/how-to-build-a-shopping-cart-with-vue-js-and-firebase\/"},"author":{"name":"Panther","@id":"http:\/\/localhost:10003\/#\/schema\/person\/b63d816f4964b163e53cbbcffaa0f3d7"},"headline":"How to Build a Shopping Cart with Vue.js and Firebase","datePublished":"2023-11-04T23:14:08+00:00","dateModified":"2023-11-05T05:47:56+00:00","mainEntityOfPage":{"@id":"http:\/\/localhost:10003\/how-to-build-a-shopping-cart-with-vue-js-and-firebase\/"},"wordCount":734,"publisher":{"@id":"http:\/\/localhost:10003\/#organization"},"keywords":["\"e-commerce\"","\"Firebase\"","\"Front-end development\"]","\"full-stack development\"","\"JavaScript\"","\"web application development\"","\"Web development\"","[\"shopping cart\"","[\"Vue.js\""],"inLanguage":"en-US"},{"@type":"WebPage","@id":"http:\/\/localhost:10003\/how-to-build-a-shopping-cart-with-vue-js-and-firebase\/","url":"http:\/\/localhost:10003\/how-to-build-a-shopping-cart-with-vue-js-and-firebase\/","name":"How to Build a Shopping Cart with Vue.js and Firebase - Pantherax Blogs","isPartOf":{"@id":"http:\/\/localhost:10003\/#website"},"datePublished":"2023-11-04T23:14:08+00:00","dateModified":"2023-11-05T05:47:56+00:00","breadcrumb":{"@id":"http:\/\/localhost:10003\/how-to-build-a-shopping-cart-with-vue-js-and-firebase\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["http:\/\/localhost:10003\/how-to-build-a-shopping-cart-with-vue-js-and-firebase\/"]}]},{"@type":"BreadcrumbList","@id":"http:\/\/localhost:10003\/how-to-build-a-shopping-cart-with-vue-js-and-firebase\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"http:\/\/localhost:10003\/"},{"@type":"ListItem","position":2,"name":"How to Build a Shopping Cart with Vue.js and Firebase"}]},{"@type":"WebSite","@id":"http:\/\/localhost:10003\/#website","url":"http:\/\/localhost:10003\/","name":"Pantherax Blogs","description":"","publisher":{"@id":"http:\/\/localhost:10003\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"http:\/\/localhost:10003\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"http:\/\/localhost:10003\/#organization","name":"Pantherax Blogs","url":"http:\/\/localhost:10003\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"http:\/\/localhost:10003\/#\/schema\/logo\/image\/","url":"http:\/\/localhost:10003\/wp-content\/uploads\/2023\/11\/cropped-9e7721cb-2d62-4f72-ab7f-7d1d8db89226.jpeg","contentUrl":"http:\/\/localhost:10003\/wp-content\/uploads\/2023\/11\/cropped-9e7721cb-2d62-4f72-ab7f-7d1d8db89226.jpeg","width":1024,"height":1024,"caption":"Pantherax Blogs"},"image":{"@id":"http:\/\/localhost:10003\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"http:\/\/localhost:10003\/#\/schema\/person\/b63d816f4964b163e53cbbcffaa0f3d7","name":"Panther","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"http:\/\/localhost:10003\/#\/schema\/person\/image\/","url":"http:\/\/2.gravatar.com\/avatar\/b8c0eda5a49f8f31ec32d0a0f9d6f838?s=96&d=mm&r=g","contentUrl":"http:\/\/2.gravatar.com\/avatar\/b8c0eda5a49f8f31ec32d0a0f9d6f838?s=96&d=mm&r=g","caption":"Panther"},"sameAs":["http:\/\/localhost:10003"],"url":"http:\/\/localhost:10003\/author\/pepethefrog\/"}]}},"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"","_links":{"self":[{"href":"http:\/\/localhost:10003\/wp-json\/wp\/v2\/posts\/4205"}],"collection":[{"href":"http:\/\/localhost:10003\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/localhost:10003\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/localhost:10003\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/localhost:10003\/wp-json\/wp\/v2\/comments?post=4205"}],"version-history":[{"count":1,"href":"http:\/\/localhost:10003\/wp-json\/wp\/v2\/posts\/4205\/revisions"}],"predecessor-version":[{"id":4341,"href":"http:\/\/localhost:10003\/wp-json\/wp\/v2\/posts\/4205\/revisions\/4341"}],"wp:attachment":[{"href":"http:\/\/localhost:10003\/wp-json\/wp\/v2\/media?parent=4205"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/localhost:10003\/wp-json\/wp\/v2\/categories?post=4205"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/localhost:10003\/wp-json\/wp\/v2\/tags?post=4205"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}