Over the past couple of months, I have had many ideas about features I would like to add to the app, and I decided that I'm going to dump them into a blog post. Before I start working on these features, I have decided to rewrite the entire app from scratch for many reasons:
Now that that’s out of the way, let me get into the features I’m planning for the app.
This feature has been suggested a thousand times already because the majority of the app’s users are non-English speakers, and the only language the app supports is English.
Based on the location of the majority of users, I will probably add Portuguese, Spanish, Turkish, German, and Chinese as the first supported languages, and will likely add more in the future. To gather translators, I will likely add a form to the app for those who are interested in translating, I will also ask for help in the Discord Bots community server which has 3,000 members from all around the world.
Currently, the app doesn’t have any sign-up/login feature, since it's not needed. However, as the app grows, it is not very ideal to store user information locally on the device, since the user’s data is gone if the app is deleted from the device. As a result, I decided that a login feature is necessary for the app.
The advantage of this system is that user data will no longer be stored on the device and, therefore cannot be lost if the app is deleted, and can be synced if the user has multiple devices with the app installed. Another advantage of this system is that users can now generate content instead of having to go to an external site. This feature enables me to add other neat features as well such as being able to review Discord bots and being able to publish your Discord bot directly from the app.
Although most apps and services have a light theme by default, I chose to design the Discord Bots app with a dark theme in mind since it most resembled Discord. However, many people prefer light theme, so I decided to add an option to switch between dark theme and light theme or use the device’s default system theme. Just like the dark theme, I will try to make the light theme resemble the official Discord app to make users familiar and at home with the UI and color scheme.
The default design system that comes out of the box with Flutter is Android’s material design system, which is currently the app’s default design. The problem with material design is that it does not resemble iOS’s design system, therefore iOS users including myself receive a slightly different design than they are used to. Although many apps on the iOS store use material design such as Google, I think it would be best if I made separate widgets for iOS to conform with its design system. Luckily, Flutter has a package filled with iOS widgets so it shouldn’t be too difficult to implement a different design for iOS.
All developers love analytics regarding their project; it lets them see how their project is doing and what needs to be improved. Presently, the app does not have any analytics for bot developers, mainly because there is no login feature to allow analytics and developer accounts to be stored. But with the development of the login with Discord feature, I hope to add an analytics screen for bot developers when they visit their bot.
Analytics will include things such as impressions, page views, invites, votes, and more! I also plan on adding app analytics such as views per page and most viewed/invited bots. Hopefully, these analytics can give bot developers and me an idea of what users prefer.
Recently, it has been especially hard to work on the app because school is very time-consuming. As a result, development has slowed down on the app and I have not been able to push any updates. I cannot promise an exact release date but I’m hoping I can finish the update by February or March.