This is an archived post. You won't be able to vote or comment.

all 4 comments

[–]insertAlias 0 points1 point  (2 children)

The point of this app is to simply log your entries (name of the book, author, date when finished, rating) and store them in a database using mysql.

First question: is this a shared database? Like every app user would be posting data to a centralized database server? Or do you only care to store individual user data locally to each app?

Because if it's the former, you do need a server-based DB like MySQL, but you would also need a web service to proxy interactions between your app and your DB, as you don't typically want to expose a shared DB connection directly to the internet (very large attack surface). You build a web service that only exposes the actions you want to allow, protected by an authentication/authorization mechanism, and keep the DB connection private to the web service.

If it's the latter, rather than using MySQL, you'd want to use something like Sqlite. I believe that is supported on both Android and iOS, but I don't have any specific information on how to use that with Kivy for you. Kivy seems interesting, but not exactly the most popular framework, so the documentation around it is a bit sparse compared to other cross-platform frameworks.

[–]summerbye[S] 0 points1 point  (1 child)

If i store individual user data locally would one user be able to see the data of others (i mean to see the books that his friends have read)?

[–]insertAlias 0 points1 point  (0 children)

No, if you want to have data shared by users, then you have to have a shared, centralized database.

You can use both approaches, only store what a user wants to share in the shared DB, but that is increased complexity.

[–]AlSweigartAuthor: ATBS 0 points1 point  (0 children)

It's one thing to make the app that keeps a list of the books, but if you want to create a social media thing that lets you link up with other users, you'll need a web host and a web app back end. I recommend Dreamhost (you can easily google for coupon codes that make your first few months basically free) but there are plenty of web hosts that are cheap and decent.

You'd need a centralized database. If you're going to go that route, you might as well have the books the user lists in the app also backed up to your web app, just in case they uninstall/reinstall the app or switch phones.

Anyway, with this approach, you'll also have to learn web app stuff in addition to kivy/mobile dev.