Future Changes

Although I’m very happy with the results of this project and the product I was able to produce, the photo gallery is in many ways still incomplete and open for improvements. Of course, this includes unaccomplished wishes, but also other features that were beyond the scope of this project, or came up during development. This section presents a list of items that could be used be used to further improve the software.

  • Sharing. Being able to share albums is a core feature of the app that hasn’t been realised yet, and is therefore first on the list of improvements. Besides sharing albums with other users, more fine-grained and public sharing could further improve the application.

  • Better organisation capabilities. Being able to download, remove or move multiple images at once would be a large improvement of having to take every action one by one. In addition, this could include photos being part of multiple albums, and additional features such as user favourites.

  • Do more with metadata. At the moment, metadata is stored and shown next to the pictures. The usefulness of these could be improved by displaying them more playfully (for example, in map views) and by using them more broadly, for example for organising pictures.

There are also some improvements that are less visible (to most or even all users), but are still important:

  • Accessibility. The current version was not built with accessibility in mind. Additional effort should be put in to ensure everbody is able to use the product as intended, even when using tools like screenreaders.

  • Action status and error handling. Forms and other interactive elements do their job and show error messages when they happen. However, clearer indicators of when something is happening in the background, transitions and more granular errors (perhaps already before sending data to the server) could greatly improve the user experience.

  • Code optimisations. Some additional optimalisations, especially in relation to caching and database queries, could improve performance and put less strain on servers, and ensure up-to-date information is shown to the user.

  • Data fetching. Server components render the data and send it to the client all at once. This works alright, but starts gettings slower for larger albums, as a lot of data needs to be transferred. Streaming the data, or only requesting it when scrolling down, could improve the experience.

When time permits in the future, I hope to come back to ImagiFolio to implement these features and slowly evolve it into a mature piece of software.