Top Quality Products

TODO App React JS (Local Storage)

$15.00

Added to wishlistRemoved from wishlist 0
Add to compare

21 sales

LIVE PREVIEW

TODO App React JS (Local Storage)

TODO App React JS (Local Storage) Review

Introduction

In today’s fast-paced world, staying organized and managing our daily tasks has become a crucial aspect of our lives. The TODO App React JS (Local Storage) is a simple yet effective task management app that allows users to create their own TODO lists without relying on any backend API or database. The app stores tasks in local storage, making it a great option for those who want to keep their tasks private and secure.

Features

The TODO App React JS (Local Storage) offers a range of features that make it an excellent task management tool. Some of the notable features include:

  • Add to Wishlist: Users can add tasks to their wishlist, making it easy to prioritize and manage their tasks.
  • Task Management: Users can create, edit, and delete tasks, making it easy to stay organized and focused.
  • Task Filtering: The app allows users to filter tasks by date (Today, Tomorrow, Yesterday, Next 7 Days, Past 7 Days, and All tasks) and status (All, Completed, Uncompleted).
  • Task Customization: Users can customize the color of their tasks, making it easy to categorize and prioritize tasks.
  • Responsive Design: The app is mobile-friendly, making it easy to use on-the-go.
  • Report Task Date Wise: Users can view their tasks by date, making it easy to track their progress and stay organized.

Future Development

The TODO App React JS (Local Storage) has a clear roadmap for future development, with several features planned to be added in the coming updates. Some of the planned features include:

  • Filter with Today, Tomorrow, Yesterday, Next 7 Days, Past 7 Days and All task
  • Filter with all, completed, Uncompleted task
  • Task can delete and edit
  • Task can mark as important
  • Task base color customization
  • Responsive mobile friendly
  • Report task date wise
  • PWA App

Built With

The TODO App React JS (Local Storage) is built using React JS and Bootstrap 5, making it a robust and scalable app.

Changelog

The app has a clear changelog, with updates listed for each version. The latest version (3.0.0) adds dark mode and updates the latest packages.

Score

I would give the TODO App React JS (Local Storage) a score of 8 out of 10. The app is well-designed, easy to use, and offers a range of features that make it an excellent task management tool. However, the app is still in its early stages, and some features are still in development. With further updates and additions, I expect the app to reach its full potential.

Conclusion

The TODO App React JS (Local Storage) is an excellent task management app that offers a range of features and is easy to use. With its local storage capabilities, users can keep their tasks private and secure. I would recommend this app to anyone looking for a simple yet effective task management solution.

User Reviews

0.0 out of 5
0
0
0
0
0
Write a review

There are no reviews yet.

Be the first to review “TODO App React JS (Local Storage)”

Your email address will not be published. Required fields are marked *

Introduction

Welcome to the TODO App React JS tutorial! In this tutorial, we will be creating a simple TODO app using React JS and Local Storage. This app will allow users to add, remove, and mark tasks as completed. We will cover the basics of React and Local Storage, and by the end of this tutorial, you will have a fully functional TODO app.

What is Local Storage?

Local Storage is a web storage API that allows us to store data locally on the client-side. It is a part of the Web Storage API, which provides a mechanism to store and retrieve data in the browser. Local Storage is ideal for storing small amounts of data that do not need to be sent over the network. It is also a good way to store data that needs to be persisted across page reloads.

What is React JS?

React JS is a JavaScript library for building user interfaces. It is used for building reusable UI components and managing the state of those components. React is a view library, which means it is used for rendering UI components, not for managing the state of the application. It is often used in conjunction with other libraries and frameworks to build complete applications.

Getting Started

To get started, you will need to install Node.js and a code editor or IDE. If you are new to React, I recommend starting with a code editor like Visual Studio Code or IntelliJ IDEA. You will also need to install the create-react-app package, which is a tool for building React applications.

Step 1: Create a New React App

To create a new React app, open your terminal and run the following command:

npx create-react-app todo-app

This will create a new directory called todo-app containing the basic files and structure for a React app.

Step 2: Set Up Local Storage

To use Local Storage in our TODO app, we need to add a few lines of code to our app. Open the index.js file and add the following code:

import React, { useState, useEffect } from 'react';
import ReactDOM from 'react-dom';

const TodoApp = () => {
  const [tasks, setTasks] = useState([]);
  const [newTask, setNewTask] = useState('');

  useEffect(() => {
    const storedTasks = localStorage.getItem('tasks');
    if (storedTasks) {
      setTasks(JSON.parse(storedTasks));
    }
  }, []);

  useEffect(() => {
    localStorage.setItem('tasks', JSON.stringify(tasks));
  }, [tasks]);

  const handleSubmit = (event) => {
    event.preventDefault();
    setTasks([...tasks, { text: newTask, completed: false }]);
    setNewTask('');
  };

  const handleToggle = (index) => {
    const newTasks = [...tasks];
    newTasks[index].completed =!newTasks[index].completed;
    setTasks(newTasks);
  };

  const handleRemove = (index) => {
    setTasks(tasks.filter((task, i) => i!== index));
  };

  return (
    <div>
      <form onSubmit={handleSubmit}>
        <input
          type="text"
          value={newTask}
          onChange={(event) => setNewTask(event.target.value)}
          placeholder="Add new task"
        />
        <button type="submit">Add</button>
      </form>
      <ul>
        {tasks.map((task, index) => (
          <li key={index}>
            <input
              type="checkbox"
              checked={task.completed}
              onChange={() => handleToggle(index)}
            />
            <span
              style={{
                textDecoration: task.completed? 'line-through' : 'none',
              }}
            >
              {task.text}
            </span>
            <button onClick={() => handleRemove(index)}>X</button>
          </li>
        ))}
      </ul>
    </div>
  );
};

ReactDOM.render(<TodoApp />, document.getElementById('root'));

This code sets up our TODO app with the basic functionality: adding new tasks, toggling task completion, and removing tasks. It also uses Local Storage to persist the tasks across page reloads.

Step 3: Run the App

To run the app, open your terminal and navigate to the todo-app directory. Run the following command:

npm start

This will start the development server, and you can access the app by navigating to http://localhost:3000 in your web browser.

Conclusion

That's it! You now have a fully functional TODO app using React JS and Local Storage. You can add new tasks, toggle task completion, and remove tasks. The app will persist the tasks across page reloads using Local Storage.

Here is a complete settings example for the TODO App React JS (Local Storage):

localStorage Settings

In the index.js file, you need to configure the local storage settings. You can do this by setting the localStorage option to true or false.

import { createStore } from 'redux';
import rootReducer from './reducers';

const store = createStore(rootReducer, {}, localStorage? undefined : undefined);

export default store;

TodoItem Settings

In the TodoItem.js file, you can configure the todo item settings by setting the id and text properties.

const TodoItem = ({ todo, handleDelete, handleEdit }) => {
  return (
    <div>
      <span>{todo.text}</span>
      <button onClick={() => handleDelete(todo.id)}>Delete</button>
      <button onClick={() => handleEdit(todo.id)}>Edit</button>
    </div>
  );
};

export default TodoItem;

TodoList Settings

In the TodoList.js file, you can configure the todo list settings by setting the todos property and passing it to the map method.

import React, { useState, useEffect } from 'react';
import { TodoItem } from './TodoItem';

const TodoList = () => {
  const [todos, setTodos] = useState([]);
  const [newTodo, setNewTodo] = useState('');

  useEffect(() => {
    const storedTodos = localStorage.getItem('todos');
    if (storedTodos) {
      setTodos(JSON.parse(storedTodos));
    }
  }, []);

  const handleAdd = () => {
    const newTodoObject = { text: newTodo, id: Math.random() };
    setTodos([...todos, newTodoObject]);
    setNewTodo('');
  };

  const handleDelete = (id) => {
    setTodos(todos.filter((todo) => todo.id!== id));
  };

  const handleEdit = (id) => {
    // TO DO: implement edit functionality
  };

  return (
    <div>
      <input
        type="text"
        value={newTodo}
        onChange={(e) => setNewTodo(e.target.value)}
      />
      <button onClick={handleAdd}>Add</button>
      <ul>
        {todos.map((todo) => (
          <TodoItem
            key={todo.id}
            todo={todo}
            handleDelete={() => handleDelete(todo.id)}
            handleEdit={() => handleEdit(todo.id)}
          />
        ))}
      </ul>
    </div>
  );
};

export default TodoList;

Store Settings

In the store.js file, you can configure the store settings by setting the reducers property and passing it to the createStore method.

import { createStore } from 'redux';
import rootReducer from './reducers';

const store = createStore(rootReducer, {});

export default store;

Reducers Settings

In the reducers.js file, you can configure the reducers settings by setting the defaultState property and implementing the todos reducer.

const defaultState = {
  todos: [],
};

const rootReducer = (state = defaultState, action) => {
  switch (action.type) {
    case 'ADD_TODO':
      return {...state, todos: [...state.todos, action.payload] };
    case 'DELETE_TODO':
      return {...state, todos: state.todos.filter((todo) => todo.id!== action.payload) };
    default:
      return state;
  }
};

export default rootReducer;

Note that this is just an example and you may need to modify the settings based on your specific use case.

Here are the features of the TODO App React JS (Local Storage): 1. Create own TODO list without any backend api and database. 2. Todo store in local storage. 3. Add to Wishlist. 4. To-do is a task management app to help you stay organized and manage your day-to-day. 5. To-do can help to make shopping lists or task lists, take notes, record collections, plan an event to increase your productivity and focus on what matters to you. Future Features: 1. Filter with Today, Tomorrow, Yesterday, Next 7 Days, Past 7 Days and All task. 2. Filter with all, completed, Uncompleted task. 3. Task can delete and edit. 4. Task can mark as important. 5. Task base color customization. 6. Responsive mobile friendly. 7. Report task date wise. 8. PWA App. Built With: 1. React JS. 2. Bootstrap 5. Changelog: 1. Version 3.0.0: * Dark Mode added. * Updated latest packages. 2. Version 2.0.0: * Bootstrap 5. * Updated latest packages. 3. Version 1.0.0: * Init release.
TODO App React JS (Local Storage)
TODO App React JS (Local Storage)

$15.00

Shop.Vyeron.com
Logo
Compare items
  • Total (0)
Compare
0