Skip to content

fernandortec/ignite-timer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

affe77b Β· Apr 11, 2024

History

50 Commits
Apr 11, 2024
Apr 11, 2024

Repository files navigation

An application to manage your time on a daily basis with ease.

Demo

Youtube description video

Layout

Feel free to check the layout in figma, here .

About

In this project, I've created a timer following @Rocketseat's React.JS training, focusing on gaining in-depth knowledge of React hooks.


Focused on only client-side functionalities, with no backend or consumption of an external API, this project contains some exciting features such as the use of reducers to manage complex state management, styled-components, react hook form to manage form states, immer to handle immutable state as if it were mutable, and much more

Installation

# Clone the repository

git clone https://github.com/fernandortec/ignite-timer.git 
cd ignite-timer

# Install necessary modules

npm install

Usage

Now just run the project with NPM and you're good to go.

npm start

Stack utilized

  • [βœ“] zod
  • [βœ“] react
  • [βœ“] immer - A lib to change immutable data as if it was mutable
  • [βœ“] date-fns
  • [βœ“] react-hook-form
  • [βœ“] styled-components
  • [βœ“] nativeHooks (useReducer and useEffect)
  • [βœ“] @hookform/resolvers/zod (React hook form + Zod)

Features

  • Start a cycle on the timer
  • Keep up with the time passed even on another tab
  • Interrupt cycle
  • History of all cycles