Duplicates in any organization can either advantageous or dangerous. In both cases, there is a need for them to be identified. This can be seen by the various posts available on the Monday.com community site, where users are asking for a way to find and perform different actions for duplicate items. The same can also be said for unique values. This app was created to find duplicate and unique values in various forms and perform the necessary actions on them.
What it does
Duplicates and Uniques by Kolaai, as the name of the app suggests is a Monday board view app that allows the user to search for duplicate and unique items in their boards. The app is created to be flexible to handle the following options
- To work on a specific board
- Work on single or multiple groups
- Configure groups to function independently or collectively
- Work on single or multiple column of different types
- Configure search on columns by taking in consideration case sensitivity, empty values(both for columns and items)
- Filtering the amount and type of data (duplicate or unique) to be returned and also filtering by the item name
- Creating a status column and label for the found results
- Moving or Copy the results to both existing boards or groups, or new boards or groups
- Deleting the found results
This comprehensive list shows the power and flexibility of the app for different scenarios. But that's not even all. One of the most important features of the app is the ability to save user settings and run it as integration (which is still in development), or use it as basis to create a new one. Additionally, the app works for items in different languages. This includes but not limited to English, French, Russian, Chinese, Italian, etc.
How we built it
The app was built with React using the GraphQL API from monday.com
Challenges we ran into
The monday.com API was in some ways limiting and therefore had to cut out some features since the API currently doesn't support that. Other challenges include, the difference in use when working with monday.com using the user interface and using the API. For example, in the user interface, a column appears right way when it is created. In the API, it doesn't. Or, deletion of sub-items don't reflect in the API, that is, in the user interface, a subitem can be successfully deleted but is still returned as a board in the API when queried. All in all, the API was sufficient enough for most of the functionality of the app.
Accomplishments that we're proud of
As a solo developer, creating an app with this level of flexibility to match different use cases brings me much joy, especially within this relatively short time frame. Most importantly, I'm happy that the app can handle large amounts items by working within the query limits of the API.
What we learned
Having no GraphQL experience before creating this app, this app helped me to level my skills up both in React and GraphQL. Also, it taught me how to research user needs and create solutions to handle them
What's next for Duplicates and Uniques
The next step is to work on more Integrations for the app, documentations and adding more features.