Welcome to the FoodKingdom Web App, a project developed as part of the Namaste React Live Course by Akshay Saini. This React JS application is designed to provide an immersive and feature-rich food delivery experience. Below are the key features and technologies used in this project:
A visually appealing shimmer effect is implemented to give users a seamless loading experience while the content is being fetched. It enhances the user interface and ensures a smooth transition between different screens.
Users can enjoy the convenience of secure, persistent authentication through Firebase Google Authentication. This feature enables seamless login and maintains user sessions, ensuring a smooth and personalized experience with every visit.
Easily locate specific restaurants or dishes with the built-in search functionality. It simplifies the process of finding exactly what you're looking for.
Easily locate specific city with the built-in search functionality. It simplifies the process of finding exactly what you're looking for.
This app utilizes CORS (Cross-Origin Resource Sharing) to fetch live data from Swiggy Public APIs. This ensures that the app can access and display real-time information from Swiggy, providing users with up-to-date menus, prices, and more.
The app's design is both stylish and responsive thanks to the use of Tailwind CSS . It offers a modern and visually appealing user interface.
Enhance the user experience with user-friendly notifications. React Toastify provides unobtrusive and informative notifications.
The project employs a mix of functional and class-based components, offering development flexibility and ensuring code maintainability.
State management is handled efficiently with Redux, a popular state management library. The Redux Toolkit is used to simplify store configuration, making data management seamless and effective.
Provides routing and navigation features, ensuring that users can easily navigate through the app, access different sections, and view restaurant details.
Custom-built accordion components enhance the user interface, offering a dynamic way to display information and menus.
Effective state management is achieved through state lifting techniques, ensuring that data is efficiently shared and managed across components.
By implementing lazy loading, the app enhances performance by loading components only when they are needed, reducing initial load times.
The Context API is used for managing application-wide state, enabling seamless data sharing between components.
Code quality and reliability are ensured through comprehensive testing with React Testing Library and Jest.