Link To Live Site: https://harmony-to-do-app.netlify.com/
Harmony is a to-do app. It features the following:
- Redux with thunks throughout the project.
- React Hooks (useState) in Login.js modal component
- Class state management in NewList.js modal component
- React Suspense for code splitting
- Webpack for bundle management
- Husky with prettier, eslint, and jest pre-commit checks
- React-Router-Dom for routing
- Styled-Components for reusable component styling.
- Jest for testing
- React, React-DOM, React-Router-DOM, Prop-Types
- Redux, Redux-Thunk, Redux-Devtools-Extension
- Webpack, Webpack-CLI,
- Loaders: babel-loader, css-loader, style-loader, file-loader, svg-inline-loader * @babel/preset-env, @babel/preset-react, @babel/plugin-syntax-dynamic-import, plugin-proposal-class-properties
- Plugins: html-webpack-plugin, webpack-bundle-analyzer,
- Other: webpack-merge, webpack-dev-server,
- @babel/core, @babel/cli
- Styled-Components
- Prettier, Pretty-Quick
- Eslint, Eslint-Plugin-React, Eslint-Plugin-JSA-a11y, Babel-Eslint
- Husky
- UUID
- Jest
- Concurrently
- Express
- Dotenv
- Nodemon
As a user, I want to be able to keep track of my to-dos in an online application, so I know what needs to be done and when.
- As a user, I want to be the only one able to access my to-dos, so I have full control. - As a user, I should be able to create an account. - As a user, I should be able to access my account through my email and password. - As a user, I should be able to logout of my account.
- As a user, I want to be able to organize my to-dos, so I can better manage my to-dos. - As a user, I want to be able to group my to-dos into different lists. - As a user, I want to be able to delete groups. - As a user, I want to assign a date for when a to-do is due. - As a user, I want to archive a to-d once it’s completed. - As a user, I want to be able to access an archive of my completed to-dos. - As a user, I want to see all of my to-dos in one view.
- As a user, I want to change the status of a to-do, so I can keep track of what has been done and what is outstanding. - As a user, I want to mark my to-do as completed. - As a user, I want to change a to-do status from completed to incomplete. - As a user, I want to be able to delete a to-do.
- As a user, I want have access to daily and/or weekly summary email reports.
- As a user, I want to have the ability to request email notifications when a to-dos becomes overdue.
- As a user, I want to access my to-dos through an iOS app.
- As a user, I want to drag and drop my to-dos to reorder them, so I can organize my to-dos however I want.
- As a user, I want to be able to drag a to-do from one list to another, so I can organize my to-dos however I want.
- As a user, I want to be able to reset my password, so I can access my account if I’ve forgotten my password.
- As a user, I want to be able to add additional details to a to-do, so I can keep track of important details regarding the to-do.
- As a user I should be able to change the email address associated with my account.
- Responsive Design