The purpose of this project was to provide a simplistic task manager for individuals and companies. The core feature of MonoTask is that it allows to perform only one task at a time, and automatically assigns user the next task when the previous one is done.
1 task at a time
is active for a user until it’s complete.
for all the users participating in a stack.
The core principle of this project is the combination of simplicity and equality that results in the effective and unconventional approach to task management. The system allows one or more users to perform only one task at a time and automatically gives another task when the previous one is complete. The unlimited amount of tasks may be combined in a stack, and all users within a stack have equal rights, such as creating or renaming tasks or changing their order.
The main problem solved by this project is the sequential performance of tasks by one or more individuals who have equal rights to alter the tasks within a stack. The number of tasks in a stack should be unlimited, and their order represents the priority. Each user may be able to alter the stack they participate in by creating tasks or changing their status, order, deadline, etc. Also, users may invite other users to the stack, share the task progress, and so on. Any task should be accompanied with a log containing technical data, and all the users who belong to the respective stack should be able to edit the log.
The principle of equality, which is the cornerstone of this project, demanded careful planning of the app structure. Since a user has unlimited rights within a stack, we had to employ several restrictions to the system to prevent a cooperative work from turning into chaos. Users do not see the stacks if they are not invited to them. The application is designed for smartphones, and we had to ensure security and control. That’s why the registration requires the phone number and is confirmed by SMS. This way, a user may invite other participants to a stack from the phone address book. Besides, a user may share the task status via an e-mail by typing the address manually or selecting the required contact from the address book.
Another challenge was to ensure the intuitive functionality of the app while retaining as many useful management features as possible. We implemented task progress tracking in the following form: the system proactively asks the user about the current task status using the set interval, at least 3 times a day. The user manually inputs the progress percentage or marks the task as complete, and the system updates the status. Once the task is complete, it is moved to the archive and the next task becomes active. The system keeps a task log with service messages available for editing by all users in a stack. We also enabled the search functionality, where user may find a task in the archive using filters to refine the search results
We managed to build an embodiment of the client’s vision of a task management application despite the tight time constraints. Our team chose React Native as the most optimal technology to develop and maintain the project. As a result, we implemented such functionalities as task tracking and editing, user queries, system notifications, logging and archive search, etc. Our realization of the client’s concept employs the benefits of mobile devices to enhance its security and data sharing possibilities.