You should create an application that allows users to create, edit and delete events with notifications about it. Events cannot cross each other. The application should follow next rules:
- There should be a page when user can view their events;
- There should be two type of modes on this page: edit mode and view mode;
- In edit mode user should allow to add, edit and delete event;
- To add and edit events should be an modal window with validation;
- Able to add notification time, event title, repeating, notification position (ex. left or right corner), and priority;
- Events should be save in browser storage asynchronously;
- Able to sort and filter events;
- Able to group events by day, month and year(should be implemented with tabs and have to user Router);
- Able to search events(something similar to global search);
Tools which have to use: React(hooks), Mobx, Typescript, AntD and other libraries on your choice.