πŸ™
Frontend Dev Guide
  • ⚑Read Me First
  • πŸ“–Frontend Interview Guide
    • πŸ’¬Technical Behavior
      • Frontend Interview Questions
      • Answering Interview Questions
    • πŸ’»Coding Challenges
      • Frontend Code Challenges
      • Data Structures and Algorithms
        • Binary Search Tree
        • Blind 75 and Neetcode
      • Take Home Assignments
    • πŸ•ΈοΈFrontend System Design
      • What is Frontend System Design?
        • Parts of the Frontend System Design
          • 1) Gather Requirements
          • 2) Architecture/High Level Design
          • 3) Data Model and Flow
          • 4) API
          • 5) Optimization and Deep Dive
        • Example: Design Spotify
  • πŸ”¦Frontend Deep Dive
    • πŸ₯žMicrofrontends
    • 🧩Fundmentals
      • πŸ”΅Cross Browser Compatibility
    • πŸ“šFrameworks/Libraries
      • 🟒Vue
      • πŸ”΅React
        • Waterfalls, Unidirectional Data Flow
        • React Server Components
    • 🏁Patterns
      • 🟑Design Patterns
      • βšͺRendering Patterns
      • 🟣Performance Patterns
    • πŸ”‹Performance
      • βšͺNetwork Optimizations
      • 🟠Build Optimizations
      • 🟣Asset Optimizations
      • πŸ”΅Core Web Vitals
  • 🐍Python
    • βšͺDjango
      • Classbased Views (CBV)
      • Cross-Site Request Forgery (CSRF)
  • πŸ—»Working Life
    • 🟣Technical Communication
  • πŸ“šGlossary
  • πŸ’‘Resources
  • πŸ‘©β€πŸ’»About Me
Powered by GitBook
On this page
  1. Frontend Interview Guide
  2. Frontend System Design
  3. What is Frontend System Design?
  4. Parts of the Frontend System Design

4) API

Describe and detail out the API and functionality between components

API, or application programming interface, is a set of tools and protocols that allows different software systems to communicate with each other. In a frontend system design, API plays a crucial role in connecting the frontend components of the application with the backend services and data.

There are two main types of API in a frontend system design: component API and client/server API.

Component API refers to the interface that a component of the frontend application exposes to other components. This API allows other components to access the functionality and state of the component and interact with it. For example, a button component may expose an API that allows other components to change the text or color of the button.

Client/server API, on the other hand, refers to the interface that the frontend application uses to communicate with the backend services and data. This API allows the frontend application to send requests to the backend and receive responses, allowing the application to retrieve and update data as well as perform other backend operations. For example, a frontend application may use a client/server API to retrieve a list of products from a backend database or submit a form to create a new user account.

In summary, API plays a vital role in a frontend system design by allowing components to communicate and interact with each other, as well as allowing the frontend application to communicate with the backend services and data.

Previous3) Data Model and FlowNext5) Optimization and Deep Dive

Last updated 2 years ago

πŸ“–
πŸ•ΈοΈ