cancel
Showing results for 
Search instead for 
Did you mean: 

Custom Development - Where to Start

Custom Development - Where to Start

So I am a long time (20+ years) developer mainly back end with C# and recently with Node. Last few years I have been doing front end stuff with Angular. I have recently been asked to Integrate one of our products into Magento 2.


I have a vanilla 2.3.3 Magento instance up and running and would like to make any changes I do irrelevant of any theme if possible. If not possible then against the default Luma theme.

The integration would look like:

  1. Browser page has a carousel (The carousel is something that I want to be able to drop onto any page)
  2. Browser calls Magento asking for what to display in the carousel
  3. Magento calls our product via a REST API call
  4. API call returns a list of products to display
  5. Magento retrieves the relevant product data and sends it back to the browser
  6. Data is displayed in the carousel

So my issue is that I am totally lost in terminology. Is my Carousel a Widget, a UI Component, a Block or something else? Is this Front End or Back end?

 

Once I understand what I will be developing, I can at lease make a start on trying to figure out how to develop them but I know that's going to trigger a bunch more posts here because everything I've read in the developer docs is written as if you should know a fair bit already about Magento.

 

Appreciate any help Smiley Happy

2 REPLIES 2

Re: Custom Development - Where to Start

Your carousel is complete module with backend as well as frontend.

Backend:

  • Create menu
  • Create slide grid
  • Create slide form (can include static blocks, products)
  • Create carousel category (if you have multiple carousel)
  • Create Category form (only if you have multiple category option)
  • Configuration for enable/disable, slide limit, slide speed, external jquery etc.
  • API for data validation as well as custom calls

Frontend:

  • Blocks which calls API to get slider data
  • Layout
  • template to show carousel
  • jQuery with carousel functionality
  • CSS or less for your carousel slider

 

Additional things you can add as per your need.

 

If it helps please give "Kudos" and "Accept solution".

Re: Custom Development - Where to Start

I ended up going with a single module with a JS based widget and REST API

- Company

  - Product
    - registration.php
    - etc
      - di.xml
      - module.xml
      - webapi.xml
      - widget.xml
    - Api
    - Block
    - Model
    - view