GithubHelp home page GithubHelp logo

shahramshakiba / reactjs-basic-course Goto Github PK

View Code? Open in Web Editor NEW
7.0 2.0 0.0 8.41 MB

ReactJS Basic Course | I am focused on learning and practicing fundamental ReactJS concepts to enhance my development skills and demonstrate progress in my journey as a developer. (πŸ”΅ReactJS)

Home Page: https://www.linkedin.com/in/shahramshakiba/

JavaScript 64.32% HTML 17.05% CSS 18.63%
reactjs basic-react

reactjs-basic-course's Introduction

Laptop Β  ReactJS Basic Course react logo

BubblesΒ  Description

To begin with, it is important to note that, these projects have been sourced from an exceptional Udemy Course.

πŸ‘€ Instructed by a proficient and expert educator, "Maximilian Schwarzmuller".

  • Step into my GitHub repository and witness the fruits of my labor in learning ReactJS. This array of projects chronicles my journey through the course and reflects my growth as a developer.
  • Each project has been carefully crafted to showcase my grasp of ReactJS concepts and best practices. Whether it's a basic application or a complex one, this repository attests to my unwavering commitment and zeal for web development.

So, delve into the repository and unearth the diverse projects I have created. I trust you'll find them informative and motivational, and I eagerly await your feedback!


List of projects :

⭐ React Essentials     ⭐ Tic Tac Toe
⭐ Investment Calculator     ⭐ Sign in Form
⭐ Styling React Component     ⭐ Final CountDown
⭐ JSX Limitations     ⭐ React Project Management
⭐ Online Clothing Shop     ⭐ Place Picker App
⭐ Simple Login     ⭐ React Quiz
⭐ Food Order Application


Laptop Β  React Essentials react logo

  • In this project, I have utilized the fundamental concepts of ReactJS such as Components, JSX, Props, and State. The aim of this project is to demonstrate how these concepts can be effectively used in building a functional application.

  • The project showcases the dynamic rendering of content and images, with separate components like Header and CoreConcept being extracted from the main App component.

  • Furthermore, to enhance the flexibility of my components, I have utilized Forwarding Props (or Proxy Props) to pass down props to child components without having to manually specify each one.

  • I have also implemented two JSX Slots in my components to allow for dynamic content insertion.

  • Additionally, I have experimented with setting component types dynamically.

  • Lastly, I have leveraged hooks like useState and passed custom arguments to Event Functions to optimize the functionality of my components.

Overall, this project serves as a simple yet effective demonstration of the essential concepts of ReactJS. Feel free to explore the code and learn from it!

Give it a go in real-time and give me a Star Glowing Star

Light Bulb React Essentials

Clapper Board

React-Essentials.mp4


Laptop Β  Tic Tac Toe react logo

  • Tic Tac Toe is a classic game that has been enjoyed by people of all ages for generations. It is a two-player game where each player takes turns marking a 3x3 grid with their symbol (either X or O) until one player successfully places three of their symbols in a row, column, or diagonal.
  • Overall, this Tic Tac Toe application is a fun and interactive way to experience the classic game while also demonstrating my proficiency in React development.

In this project, I have undertaken an in-depth exploration of numerous key concepts.

πŸ”‘ Which Concepts Have I Covered :

  • πŸ”“ Splitting Components by feature Β Β Β  πŸ”“ Reusing Components
  • πŸ”“ Conditional Content - A Suboptimal Way Of Updating State
  • πŸ”“ Updating State Based On Old State
  • πŸ”“ Rendering Multi-Dimensional Lists
  • πŸ”“ Updating Object State Immutably Β Β Β  πŸ”“ Lifting State Up
  • πŸ”“ Computed Values - Avoid Unnecessary State Management
  • πŸ”“ Deriving State From Props Β Β Β  πŸ”“ Sharing State Across Components
  • πŸ”“ Lifting Computed Values Up Β Β Β  πŸ”“ and several other concepts as well.

Give it a go in real-time and give me a Star Glowing Star

Light Bulb Tic Tac Toe Game

Clapper Board

TicTacToe-Game.mp4


Laptop Β  Investment Calculator react logo

  • React-powered Investment Calculator
  • In this project, the website visitors can use to calculate the future value or multiple future values for given investment parameters.

πŸ”‘ Which Concepts Have I Covered :

  • πŸ”“ Build an "Investment Calculator" Web App
  • πŸ”“ Build, Configure & Combines Components
  • πŸ”“ Manage Application State Β Β Β  πŸ”“ Output List & Conditional Content
  • πŸ”“ Handling Events | Using Two-Way-Binding Β Β Β  πŸ”“ Lifting State Up
  • πŸ”“ Computing Values | Properly Handling Number Values

Give it a go in real-time and give me a Star Glowing Star

Light Bulb "Investment Calculator" Web App

Clapper Board

Investment-Calculator.mp4


Laptop Β  SIGN IN FORM react logo

Styling React Components Yellow Gear

The main objective of this project is to enhance the visual appearance of "React applications" by applying various styling techniques.

βž– The web page is not functional as clicking "Create a new account" or "SIGN IN" does not do anything.
βž– However, entering invalid credentials will highlight the input fields with a red background color and border, indicating that conditional styles are present.

  • Initially, I will utilize Vanilla CSS to style the application.

  • After that, I will switch to CSS-in-JS styling using "Styled Components".

  • Finally, in the last step of the project, I will modify the style of the application using Tailwind CSS.

Give it a go in real-time and give me a Star Glowing Star

Light Bulb Sign in Form

Clapper Board

SignIn-Form.mp4


Laptop Β  Styling React Component react logo

Pre-built Project Yellow Gear

Throughout my work on this project, I focused solely on the styling of the React Component, which had already been developed and provided to me.

To accomplish this task

  • I practiced utilizing various styling techniques such as Inline Styles, Styled Components, and CSS Modules.
  • By applying these techniques, I was able to modify the appearance of the component to meet the desired design specifications.

Give it a go in real-time and give me a Star Glowing Star

Light Bulb Styling React Component

Clapper Board

Stylin-ReactComponent.mp4


Laptop Β  Final CountDown react logo

This section is about Refs and Portals. Two slightly more advanced React concepts which you definitely don't need in all React apps you are going to build.

πŸ”‘ In this project, I have undertaken some key concepts :

  • πŸ”“ Accessing DOM Elements with Refs Β Β Β  πŸ”“ Managing Values with Refs
  • πŸ”“ Forwarding Refs to Custom Components using forwardRef function
  • πŸ”“ Exposing Component APIs via the useImperativeHandle Hook
  • πŸ”“ Detaching DOM Rendering from JSX Structure with portals

It is kind of a Game where website visitors can start different timer challenges with the goal of estimating when time is up and stopping the timer early enough before it expires.

Give it a go in real-time and give me a Star Glowing Star

Light Bulb Final CountDown

Clapper Board

Final-CountDown.mp4


Laptop Β  JSX Limitations react logo

Pre-built Project Yellow Gear

Throughout my work on this project, I focused solely on the JSX Limitations, which had already been developed and provided to me.

πŸ”‘ Which Concepts Have I Covered : :

  • πŸ”“ One JSX Limitations is you can't return more than one "root" JSX element :
    1. Creating a custom Wrapper Component
    2. "Fragments" like React fragments can help us overocome JSX limitations.
  • πŸ”“ Getting a Cleaner DOM with "Portals"
  • πŸ”“ Working with "Refs"
Clapper Board

JSX-Limitations



Laptop Β  React Project Management react logo

  • Project management is a system that allows users to create and manage multiple projects in one place. Users can add new projects, select a desired project to open, and then add tasks within the project. Tasks and projects can be cleared, or deleted as needed.
    This system helps users stay organized and on track with their project goals.

For this project, I plan to incorporate all the concepts covered in the course up to this point.
πŸ”‘ Which Concepts Have I Covered :

  • πŸ”“ Configure & Re-use Components
  • πŸ”“ Managing State to Switch Between Components
  • πŸ”“ Access DOM Elements & Browser APIs with Refs
  • πŸ”“ Collecting User Input with Refs, using ForwardRef
  • πŸ”“ Validating User Input & Showing an Error Modal via useImperativeHandle
  • πŸ”“ Prop Drilling Β Β Β  πŸ”“ Styling via Tailwind CSS

Give it a go in real-time and give me a Star Glowing Star

Light Bulb React Project Management

Clapper Board

Project-Management.mp4


Laptop Β  Online Clothing Shop react logo

Pre-built Project Yellow Gear

  • During the course of this project, my primary focus was dedicated to devising solutions for the issue of Shared-State (Prop Drilling), which had already been developed and provided to me.
  • It is important to note that this establishment does not constitute a comprehensive online retail platform, rather, it serves solely as a shop with functionality limited to the cart feature.

πŸ”‘ Which Concepts Have I Covered :

  • πŸ”“ Working on solutions for the problem of Shared-State(Prop Drilling)
  • πŸ”“ Embracing Component Composition Β Β Β  πŸ”“ Sharing State with Context
  • πŸ”“ Managing complex state with Redusers

Give it a go in real-time and give me a Star Glowing Star

Light Bulb Online Clothing Shop

Clapper Board

Online-Clothing-Shop.mp4


Laptop Β  Place Picker Application react logo

Pre-built Project Yellow Gear

  • This application is a Place Picker that enables us to select destinations we may want to visit in the future.

  • It also provides the option to remove places from our list if we decide not to visit them.

  • You must allow browser location access to retrieve places based on your current location.

πŸ”‘ Which Concepts Have I Covered :

  • πŸ”“ Understanding Side Effects & useEffect()
  • πŸ”“ How to use useEffect() Β Β Β  πŸ”“ How to manage useEffect() Dependencies
  • πŸ”“ When NOT to use useEffect()

Give it a go in real-time and give me a Star Glowing Star

Light Bulb Place Picker Application

Clapper Board

Place-Picker.mp4


Laptop Β  Simple Login react logo

Pre-built Project Yellow Gear

  • In this project, the authentication process is not authentic.
  • All you need is a valid email address and a password with a minimum length of 7 characters.
  • Once you click on the login button, you will be directed to the welcome screen, and the log out button will return you to the previous page.

πŸ”‘ Which Concepts Have I Covered :

  • πŸ”“ Working with (Side) Effects Β Β Β  πŸ”“ Managing more complex State with Reducers
  • πŸ”“ Managing App-Wide or Component-Wide State with Context API
  • πŸ”“ Working with forwardRef & useImperativeHandle

Give it a go in real-time and give me a Star Glowing Star

Light Bulb Simple Login

Clapper Board

Simple-Login.mp4


Laptop Β  React Quiz react logo

  • This React Quiz Application is a comprehensive and engaging platform designed to test your knowledge of React concepts, including side effects and many other key topics.
  • With a wide range of multiple choice questions, users can challenge themselves and enhance their understanding of React while having fun.
  • Whether you're a beginner looking to learn more about React or an experienced developer wanting to test your skills,
    this quiz app is the perfect tool for expanding your knowledge and honing your expertise in React.

In this project, I have undertaken an in-depth exploration of numerous key concepts.

πŸ”‘ Which Concepts Have I Covered :

  • πŸ”“ Deriving Computed-Values from State Β Β Β  πŸ”“ Updating State based on Old-State
  • πŸ”“ Working with useEffect to Manage setTimeout and setInterval
  • πŸ”“ Workin with useCallback to Skipping re-rendering of components
  • πŸ”“ Using Effect Cleanup Functions Β Β Β  πŸ”“ Using Keys for Resetting Components
  • πŸ”“ Splitting Components Up Β Β Β  πŸ”“ Moving State Down

Give it a go in real-time and give me a Star Glowing Star

Light Bulb React Quiz

Clapper Board

React-Quiz.mp4


Laptop Β  Food Order Application react logo

  • This project serves as a larger application that integrates all the key concepts I learned throughout the course.
    It provides a context to see these concepts in action within a bigger project, covering essential React features like Components, State, and more from the basics.
  • This project is a basic Food Order App that features a menu of available meals for selection. Users can choose meals from the menu and add them to their cart, with the ability to adjust quantities as needed.

In this project, I have undertaken an in-depth exploration of numerous key concepts.

πŸ”‘ Which Concepts Have I Covered :

  • πŸ”“ Set up the Components and then Isolate them.
  • πŸ”“ Working with re-usable & pre-styled Utilities Component
  • πŸ”“ Adding a Modal via a React Portal
  • πŸ”“ Managing State & Props with Prop Drilling instead of using Context to make Modal more re-useable & does not tie it to one specific case.
  • πŸ”“ Work with Context to Manage all Cart Data through Context
  • πŸ”“ Utilizing the Reducer Hook to handle the Addition and Removal of items from the Cart
  • πŸ”“ State & Conditional Rendering
  • πŸ”“ Working with Refs & Forward Refs
  • πŸ”“ Using the useEffect Hook
  • πŸ”“ Using CSS Modul for Styling

Give it a go in real-time and give me a Star Glowing Star

Light Bulb Food Order Application

Clapper Board

Food-Order-App.mp4


Telephone Find me around the Web :

linkedin logo Β Β Β  telegram logo Β Β Β  whatsapp logo Β Β Β  instagram logo Β Β Β  twitter logo

reactjs-basic-course's People

Contributors

shahramshakiba avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.