This is a simple contact storage app built with React, Redux Toolkit, and Firebase(for the backend), allowing users to create, edit and remove notes. The app features a user-friendly interface for interacting with contacts comfortably and efficiently. Firebase has also been added to ensure stable data storage without automatically syncing remote data changes.
- Add a new contact with name and mail
- Edit existing contacts
- Remove contacts
- Smart search
- Modul confirmation window
- React
- Redux Toolkit
- Typescript
- Firebase
- Tailwind CSS (Responsive Layout)
- To start using the app, on the welcome page click the "Lets start!".
- To create a new contact, click the "+" button and fill in the inputs. Then click "Add contact!" to add the contact.
- To edit a contact, click the "Pen on paper svg" button next to the contact you want to modify. Make the changes and click "Edit contact!" to update the contact.
- To remove a contact, click the "Trash can svg" button next to the contact you want to delete and confirm your action in Module Window.
- To find a contact, click the "Search for contact" input and write some text.
Contributions are welcome! If you find a bug or have an idea for an enhancement, feel free to contact me.
Follow the steps below to run the app locally:
Clone the repository:
Navigate to the project directory:
Install the dependencies:
Start the development server:
Launches the server at localhost with port 3000.
The app will be running at http://localhost:3000 in your browser.
Launches the test runner in the interactive watch mode.
See the section about running tests for more information.
Builds the app for production to the build
folder.
It correctly bundles React in production mode and optimizes the build for the best performance.
The build is minified and the filenames include the hashes.
Your app is ready to be deployed!
See the section about deployment for more information.
Note: this is a one-way operation. Once you eject
, you can’t go back!
If you aren’t satisfied with the build tool and configuration choices, you can eject
at any time. This command will remove the single build dependency from your project.
Instead, it will copy all the configuration files and the transitive dependencies (webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except eject
will still work, but they will point to the copied scripts so you can tweak them. At this point you’re on your own.
You don’t have to ever use eject
. The curated feature set is suitable for small and middle deployments, and you shouldn’t feel obligated to use this feature. However we understand that this tool wouldn’t be useful if you couldn’t customize it when you are ready for it.