Alexander Korpusov (oleksako)
Dmitry Filosofov (dmitryf)
Saskia Brinkmann (saskiabr) - left the group due to personal issues
Product descriptions requirements
This assignment involves making a DHIS2 Web App for searching, browsing and proposing changes to organisation units and related resources such as organisation units groups.
- Searching through organisation units. The searching should support filtering.
- Displaying attributes of organisation units. Users should be able to configure which attributes should be shown.
- A possibility for users to propose changes for the organisation units and it's structure. The list with the changes should support filtering to show only proposals relevant for the particular administrator.
- React - main library providing all of the necessary basic functionality for developing UI application.
- react-router-dom - allows to make dynamic routing
- fuse.js - used to provide fuzzy search functionality
- leaflet - used to render maps
- react-bootstrap - react components for bootstrap, provides easy way to write UI using bootstrap without the need to write out pure html.
The user interface of the application has three main parts - search area, information area and map area. In the information area a user can choose an organization unit either from a tree list, or by using search (which support fuzzy searching to avoid simple misspellings). Information area consists is where all the information about an organization unit is shown. A user has an opportunity to keep three different organization units open simultaneously in the appropriate tabs. The map area is situated on the right side of the application. If an organization unit has the attributt with coordinates, it will be shown as a point or a region in the map area.
Administrators have an opportunity to to add specific Data Elements to be shown in the information area. Access to the set-up page is possible through the Manage panel, where administrator should select the data elements to show. The period in the current version is set to the current year, although the possibly to mark the period is reserved in the data structure of the app.
We will be using open source products to develop our app, and our product itself will be open sources (MIT licensed).
React is MIT licensed.
Material UI is MIT licensed.
Division of labour
All the team members will contribute equally to the design and development of the application. Alexander has put an extra effort into the parts related to the search tree, while Dmitry into the parts related to maps and administrative options.