# A Homework App (Help required)

**URL:** <https://community.thunkable.com/t/a-homework-app-help-required/1042274>\
**Category:** Questions about Thunkable X\
**Created:** [January 6, 2021, 11:28am UTC](https://community.thunkable.com/t/a-homework-app-help-required/1042274 "2021-01-06T11:28:18Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![thecodingmasterabeer](https://sea1.discourse-cdn.com/flex015/user_avatar/community.thunkable.com/thecodingmasterabeer/32/90158_2.png) [@thecodingmasterabeer](https://community.thunkable.com/u/thecodingmasterabeer)\
**Post date:** [January 6, 2021, 11:28am UTC](https://community.thunkable.com/t/a-homework-app-help-required/1042274/1 "2021-01-06T11:28:18Z")

</div>

Hi dearest community members,  
Actually, I needed some help: I was thinking of creating a Homework App which will be used **for my school**. Three simple features that I thought should be in the app:

- Login system (Signup/Sign in using Google/Facebook/Apple if possible. If not, some other work-around).
- An option for creating folder-like things in app where people can post homework for one particular assignment.
- Person who uploads most assignments should get points.  
Can you all please tell how I can put all these features in my app?  
Sincere Regards,  
@thecodingmasterabeer

---

<div class="post-metadata">

**Author:** ![drted](https://sea1.discourse-cdn.com/flex015/user_avatar/community.thunkable.com/drted/32/92694_2.png) [@drted](https://community.thunkable.com/u/drted)\
**Post date:** [January 6, 2021, 11:58am UTC](https://community.thunkable.com/t/a-homework-app-help-required/1042274/2 "2021-01-06T11:58:22Z")

</div>

@thecodingmasterabeer

That is a very interesting and exciting app idea!

It is also a surprisingly complex app.

For the sign in, read the Thunkable documents on Firebase Sign in: [Email Sign In by Firebase - ✕ Docs](https://docs.thunkable.com/sign-in-1)

For uploading assignment, you will need to decide between 2 strategies:

1. Upload and STORE the document
2. Upload a LINK to the document

Uploading a link to a document on the internet will be a bit easier with Thunkable. I would recommend you start with uploading a link. Later after your app is working you can add uploading and storing a document.

To track of documents/assignments uploaded by students and give them points, I would recommend you use the Firebase Realtime database using Stored Variables. You can read about how to do that

- [Realtime DB by Firebase - ✕ Docs](https://docs.thunkable.com/realtime-db)
- [Variables - ✕ Docs](https://docs.thunkable.com/variables#app-stored-and-cloud-variables)
- [Thunkable Hack - Deep Firebase JSON data manipulation without using GET or SAVE Blocks](http://community.thunkable.com/t/thunkable-hack-deep-firebase-json-data-manipulation-without-using-get-or-save-blocks/975738)

It is a big project, so take it one step at a time.

Happy Thunking!

---

<div class="post-metadata">

**Author:** ![thecodingmasterabeer](https://sea1.discourse-cdn.com/flex015/user_avatar/community.thunkable.com/thecodingmasterabeer/32/90158_2.png) [@thecodingmasterabeer](https://community.thunkable.com/u/thecodingmasterabeer)\
**Post date:** [January 6, 2021, 12:19pm UTC](https://community.thunkable.com/t/a-homework-app-help-required/1042274/3 "2021-01-06T12:19:45Z")

</div>

With which component should I do the document processing?

---

<div class="post-metadata">

**Author:** ![eko.devs.apploroceo](https://sea1.discourse-cdn.com/flex015/user_avatar/community.thunkable.com/eko.devs.apploroceo/32/93147_2.png) [@eko.devs.apploroceo](https://community.thunkable.com/u/eko.devs.apploroceo)\
**Post date:** [January 6, 2021, 12:47pm UTC](https://community.thunkable.com/t/a-homework-app-help-required/1042274/4 "2021-01-06T12:47:36Z")

</div>

> [@thecodingmasterabeer](#):
>
> With which component should I do the document processing?

pdf viewer

---

<div class="post-metadata">

**Author:** ![drted](https://sea1.discourse-cdn.com/flex015/user_avatar/community.thunkable.com/drted/32/92694_2.png) [@drted](https://community.thunkable.com/u/drted)\
**Post date:** [January 6, 2021, 1:01pm UTC](https://community.thunkable.com/t/a-homework-app-help-required/1042274/5 "2021-01-06T13:01:29Z")

</div>

> [@thecodingmasterabeer](#):
>
> With which component should I do the document processing?

It depends on your approach. If you have your users provide links, I would recommend firebase realtime database. For actually uploading the files, You are going to need some sort of file repository, probably through a Web API interface. Personally, I would use Firestore, since it is free and associated with the Firebase Sign In. But there are probably other good/better solutions.

---

<div class="post-metadata">

**Author:** ![ioannis](https://sea1.discourse-cdn.com/flex015/user_avatar/community.thunkable.com/ioannis/32/146956_2.png) [@ioannis](https://community.thunkable.com/u/ioannis)\
**Post date:** [November 8, 2024, 1:31pm UTC](https://community.thunkable.com/t/a-homework-app-help-required/1042274/6 "2024-11-08T13:31:01Z")

</div>


