Category: Examples

https://cdn-icons-png.flaticon.com/512/5307/5307812.png

  • Theme Switcher

    This example demonstrates how to toggle between light and dark themes.

    jsxCopy codeimport React, { useState } from 'react';
    import ReactDOM from 'react-dom';
    
    function App() {
      const [darkMode, setDarkMode] = useState(false);
    
      const toggleTheme = () => setDarkMode(!darkMode);
    
      return (
    
    <div style={{ background: darkMode ? '#333' : '#FFF', color: darkMode ? '#FFF' : '#000', padding: '20px' }}>
      <h1>Theme Switcher</h1>
      <button onClick={toggleTheme}>
        Switch to {darkMode ? 'Light' : 'Dark'} Mode
      </button>
      <p>This is a simple theme switcher example!</p>
    </div>
    ); } ReactDOM.render(<App />, document.getElementById('root'));
  • Responsive Navigation Menu

    This example shows a simple responsive navigation menu.

    jsxCopy codeimport React, { useState } from 'react';
    import ReactDOM from 'react-dom';
    
    function NavBar() {
      const [isOpen, setIsOpen] = useState(false);
    
      const toggleMenu = () => setIsOpen(!isOpen);
    
      return (
    
    &lt;nav&gt;
      &lt;button onClick={toggleMenu}&gt;
        {isOpen ? 'Close Menu' : 'Open Menu'}
      &lt;/button&gt;
      {isOpen &amp;&amp; (
        &lt;ul&gt;
          &lt;li&gt;Home&lt;/li&gt;
          &lt;li&gt;About&lt;/li&gt;
          &lt;li&gt;Contact&lt;/li&gt;
        &lt;/ul&gt;
      )}
    &lt;/nav&gt;
    ); } ReactDOM.render(<NavBar />, document.getElementById('root'));
  • Modal Component

    A simple modal component implementation.

    jsxCopy codeimport React, { useState } from 'react';
    import ReactDOM from 'react-dom';
    
    function Modal({ isOpen, onClose }) {
      if (!isOpen) return null;
    
      return (
    
    &lt;div style={modalStyle}&gt;
      &lt;h2&gt;Modal Title&lt;/h2&gt;
      &lt;p&gt;This is a simple modal!&lt;/p&gt;
      &lt;button onClick={onClose}&gt;Close&lt;/button&gt;
    &lt;/div&gt;
    ); } const modalStyle = { position: 'fixed', top: '50%', left: '50%', transform: 'translate(-50%, -50%)', padding: '20px', backgroundColor: 'white', boxShadow: '0 4px 8px rgba(0, 0, 0, 0.2)', }; function App() { const [isModalOpen, setModalOpen] = useState(false); return (
    &lt;div&gt;
      &lt;h1&gt;Modal Example&lt;/h1&gt;
      &lt;button onClick={() =&gt; setModalOpen(true)}&gt;Open Modal&lt;/button&gt;
      &lt;Modal isOpen={isModalOpen} onClose={() =&gt; setModalOpen(false)} /&gt;
    &lt;/div&gt;
    ); } ReactDOM.render(<App />, document.getElementById('root'));
  • Tabs Component

    This example shows how to create a simple tabbed interface.

    jsxCopy codeimport React, { useState } from 'react';
    import ReactDOM from 'react-dom';
    
    function Tabs() {
      const [activeTab, setActiveTab] = useState('Tab1');
    
      const renderContent = () => {
    
    switch (activeTab) {
      case 'Tab1':
        return &lt;div&gt;This is content for Tab 1.&lt;/div&gt;;
      case 'Tab2':
        return &lt;div&gt;This is content for Tab 2.&lt;/div&gt;;
      case 'Tab3':
        return &lt;div&gt;This is content for Tab 3.&lt;/div&gt;;
      default:
        return null;
    }
    }; return (
    &lt;div&gt;
      &lt;h1&gt;Tabs Example&lt;/h1&gt;
      &lt;div&gt;
        &lt;button onClick={() =&gt; setActiveTab('Tab1')}&gt;Tab 1&lt;/button&gt;
        &lt;button onClick={() =&gt; setActiveTab('Tab2')}&gt;Tab 2&lt;/button&gt;
        &lt;button onClick={() =&gt; setActiveTab('Tab3')}&gt;Tab 3&lt;/button&gt;
      &lt;/div&gt;
      &lt;div&gt;{renderContent()}&lt;/div&gt;
    &lt;/div&gt;
    ); } ReactDOM.render(<Tabs />, document.getElementById('root'));
  • Simple Shopping Cart

    This example demonstrates how to build a basic shopping cart with the ability to add and remove items.

    jsxCopy codeimport React, { useState } from 'react';
    import ReactDOM from 'react-dom';
    
    const items = [
      { id: 1, name: 'Apple', price: 1 },
      { id: 2, name: 'Banana', price: 0.5 },
      { id: 3, name: 'Orange', price: 0.8 },
    ];
    
    function ShoppingCart() {
      const [cart, setCart] = useState([]);
    
      const addItem = (item) => {
    
    setCart(&#91;...cart, item]);
    }; const removeItem = (id) => {
    setCart(cart.filter(item =&gt; item.id !== id));
    }; const total = cart.reduce((acc, item) => acc + item.price, 0); return (
    &lt;div&gt;
      &lt;h1&gt;Shopping Cart&lt;/h1&gt;
      &lt;h2&gt;Items:&lt;/h2&gt;
      &lt;ul&gt;
        {items.map(item =&gt; (
          &lt;li key={item.id}&gt;
            {item.name} - ${item.price}
            &lt;button onClick={() =&gt; addItem(item)}&gt;Add to Cart&lt;/button&gt;
          &lt;/li&gt;
        ))}
      &lt;/ul&gt;
      &lt;h2&gt;Cart:&lt;/h2&gt;
      &lt;ul&gt;
        {cart.map(item =&gt; (
          &lt;li key={item.id}&gt;
            {item.name} - ${item.price}
            &lt;button onClick={() =&gt; removeItem(item.id)}&gt;Remove&lt;/button&gt;
          &lt;/li&gt;
        ))}
      &lt;/ul&gt;
      &lt;h3&gt;Total: ${total.toFixed(2)}&lt;/h3&gt;
    &lt;/div&gt;
    ); } ReactDOM.render(<ShoppingCart />, document.getElementById('root'));
  • Parent-Child Component Communication

    This example demonstrates communication between parent and child components.

    jsxCopy codeimport React, { useState } from 'react';
    import ReactDOM from 'react-dom';
    
    function ParentComponent() {
      const [message, setMessage] = useState('Hello from Parent!');
    
      return (
    
    &lt;div&gt;
      &lt;h1&gt;Parent Component&lt;/h1&gt;
      &lt;ChildComponent message={message} /&gt;
      &lt;button onClick={() =&gt; setMessage('Message Updated!')}&gt;Update Message&lt;/button&gt;
    &lt;/div&gt;
    ); } function ChildComponent({ message }) { return <h2>Child Component: {message}</h2>; } ReactDOM.render(<ParentComponent />, document.getElementById('root'));
  • Basic Counter with Hooks

    A simple counter application using hooks.

    jsxCopy codeimport React, { useState } from 'react';
    import ReactDOM from 'react-dom';
    
    function Counter() {
      const [count, setCount] = useState(0);
    
      return (
    
    &lt;div&gt;
      &lt;h1&gt;Count: {count}&lt;/h1&gt;
      &lt;button onClick={() =&gt; setCount(count + 1)}&gt;Increment&lt;/button&gt;
      &lt;button onClick={() =&gt; setCount(count - 1)}&gt;Decrement&lt;/button&gt;
      &lt;button onClick={() =&gt; setCount(0)}&gt;Reset&lt;/button&gt;
    &lt;/div&gt;
    ); } ReactDOM.render(<Counter />, document.getElementById('root'));
  • Form Handling Example

    This example demonstrates form handling with controlled components.

    jsxCopy codeimport React, { useState } from 'react';
    import ReactDOM from 'react-dom';
    
    function FormExample() {
      const [formData, setFormData] = useState({ name: '', email: '' });
    
      const handleChange = (e) => {
    
    const { name, value } = e.target;
    setFormData({ ...formData, &#91;name]: value });
    }; const handleSubmit = (e) => {
    e.preventDefault();
    alert(Name: ${formData.name}, Email: ${formData.email});
    }; return (
    &lt;form onSubmit={handleSubmit}&gt;
      &lt;h1&gt;Contact Form&lt;/h1&gt;
      &lt;input
        type="text"
        name="name"
        placeholder="Name"
        value={formData.name}
        onChange={handleChange}
      /&gt;
      &lt;input
        type="email"
        name="email"
        placeholder="Email"
        value={formData.email}
        onChange={handleChange}
      /&gt;
      &lt;button type="submit"&gt;Submit&lt;/button&gt;
    &lt;/form&gt;
    ); } ReactDOM.render(<FormExample />, document.getElementById('root'));
  • Fetch Data from an API

    This example fetches data from a public API and displays it.

    jsxCopy codeimport React, { useEffect, useState } from 'react';
    import ReactDOM from 'react-dom';
    
    function UserList() {
      const [users, setUsers] = useState([]);
      const [loading, setLoading] = useState(true);
    
      useEffect(() => {
    
    const fetchUsers = async () =&gt; {
      const response = await fetch('https://jsonplaceholder.typicode.com/users');
      const data = await response.json();
      setUsers(data);
      setLoading(false);
    };
    fetchUsers();
    }, []); if (loading) return <div>Loading...</div>; return (
    &lt;div&gt;
      &lt;h1&gt;User List&lt;/h1&gt;
      &lt;ul&gt;
        {users.map(user =&gt; (
          &lt;li key={user.id}&gt;{user.name} - {user.email}&lt;/li&gt;
        ))}
      &lt;/ul&gt;
    &lt;/div&gt;
    ); } ReactDOM.render(<UserList />, document.getElementById('root'));
  • Simple Todo List

    This example demonstrates managing a list of tasks using state.

    jsxCopy codeimport React, { useState } from 'react';
    import ReactDOM from 'react-dom';
    
    function TodoApp() {
      const [tasks, setTasks] = useState([]);
      const [inputValue, setInputValue] = useState('');
    
      const addTask = () => {
    
    if (inputValue) {
      setTasks(&#91;...tasks, inputValue]);
      setInputValue('');
    }
    }; const removeTask = (index) => {
    const newTasks = tasks.filter((_, i) =&gt; i !== index);
    setTasks(newTasks);
    }; return (
    &lt;div&gt;
      &lt;h1&gt;Todo List&lt;/h1&gt;
      &lt;input
        type="text"
        value={inputValue}
        onChange={(e) =&gt; setInputValue(e.target.value)}
        placeholder="Add a new task"
      /&gt;
      &lt;button onClick={addTask}&gt;Add&lt;/button&gt;
      &lt;ul&gt;
        {tasks.map((task, index) =&gt; (
          &lt;li key={index}&gt;
            {task} &lt;button onClick={() =&gt; removeTask(index)}&gt;Remove&lt;/button&gt;
          &lt;/li&gt;
        ))}
      &lt;/ul&gt;
    &lt;/div&gt;
    ); } ReactDOM.render(<TodoApp />, document.getElementById('root'));