Is Firebase Studio the right tool for me?

I would like to make an application that does the following:

  1. Enables users to log in with email & Google (Firebase Authentication).
  2. Logged-in users can upload their text documents, and text is stored in the Firebase Database.
  3. Users can submit a pair of those text documents to be evaluated by Gemini LLM, which would provide a brief description of how well those documents match.

My question is whether Firebase Studio is the right tool to build such an application.

NOTE: I am not a software developer.

What have I done so far?
I tried to build it myself with Prototyper. I got a lovely front end, and I have set up all the Rules in the Firebase Database and Storage. I have got LLM integration, and there I run into problems. I am guessing between Genkit and Gemini LLM, since regardless that I am sending data from the Firebase, I get generic (synthesised data) results back from the LLM.

Where did it all go wrong?
Trying to fix issues between LLM and Genkig, Prototyper has started making changes left, right and centre. Trying to fix that first issue, Prototyper introduced more bugs. Trying to fix those new ones it introduced even more. I have built the whole app within a day, and then spent countless days trying to fix more and more bugs. Until I got to the stage where document upload stopped working, Parsing of PFFs broke, and occasionally even login doesn’t work as well.

All this made me think, as I am getting further and further from my goal, is Studio the best tool for this scenario (for a non-coder)?

Try to use Cloud Storage to keep docs. Firestone is nosql store and has 1M limit per document. You need to enable Storage and instruct Gemini to store documents there and store urls of documents in Firestone.
Look in firebase console if your docs are there.
This way it should work I think
Concerning your travel down ypthe rabbit hole, look at restore button at previous file changes and go there. You can use /clear to clean context and ask for change in different way.

Thanks for the tip Tom!

I actually use Storage to upload documents, since some are PDF, some text and some Docx, but most are short docs like one page, so I have built it so that the file gets parsed and then simply deleted, while the text is in Firebase DB. Would that be an OK scenario for such short one page docs?

I think for MVP I am happy with the above, but my real problem is Genkit and Gemini LLM not really liking each other! :slight_smile:

I understand now. Sure, it’s ok, I store my texts like this too. I think in order to compare two texts you need to put then in a variable like: “compare two texts *****text_1: *****text_2 : ” and use it as a prompt to put both texts in context, or similar approach with system prompt „compare two texts”
I used this approach in a plagiarism check.