Skip to content

shreyT19/Zenskar-App-Builder

Repository files navigation

App-Builder

Implemented Features

Here's a rundown of the features I've successfully implemented:

Drag and Drop Components

I've developed a drag-and-drop feature that allows users to effortlessly add various components to the canvas. These components include text inputs, buttons, tables, and dropdowns. Users can simply drag their desired component onto the canvas area, facilitating a seamless user experience.

Component Search

To enhance usability, I've integrated a component search feature. This enables users to quickly find the component they need to add to the canvas. The search functionality is intuitive and greatly streamlines the component selection process.

Edit Component Properties

Users have the ability to edit properties of the components they've added. Whether it's modifying text content, adjusting styles, or altering other relevant attributes, the interface offers a smooth and responsive editing experience.

Delete Single Component

In order to maintain control and flexibility, I've implemented a feature that enables users to delete individual components from the canvas. This ensures that users can refine their designs without any hindrance.

Reset Board

To allow users to start afresh, I've included a "reset" button that clears all components from the canvas. This provides a convenient way for users to begin anew if they wish to refine their design approach.

Local Storage Integration

A crucial aspect of the project was ensuring that users' progress is saved even after reloading the page. To achieve this, I've seamlessly integrated local storage. This means that users can confidently close the application and return to it later with their progress intact.

Tech Stack

To accomplish the above features, I've utilized the following technologies:

  • Zustand: This lightweight and performant state management library for React enabled efficient management of application state.
  • Tailwind CSS: The Tailwind CSS framework empowered me to craft a polished and responsive user interface with minimal effort.