Girl Scout learning project

My niece is a smart kid and a Girl Scout…I’ve been trying to think of a way to get her interested in technology. I have a project in mind that I think would be great for her and her G.S. Troop…Let me know what you all think? I’m imagining a database that has a Mycroft text to speech and speech to text interface…the point is to catalog where everything is at, at the local grocery store…(I always have trouble finding stuff)…So I wanna send the Girl Scouts in there to record where everything is at…each girl takes an aisle?!? When it’s done, you got an app that you could ask “what aisle is the peanut butter on?” And it would respond “look on aisle 17, toward the back of the store” or something like that…Lots of different features could be added and perhaps it could be updated in real time…"Mycroft, they moved the cereal to aisle 4, Captain Crunch is on sale for $2.00 a box"
Can anyone describe a broad outline of what would be required to create something like this? Thanks

I don’t think you would need mycroft for this project.

You’ll most likely want a phone app or a webpage. I’m more into web development so I’ll describe how I’ll approach this project by building a webpage…

First, choose a backend service. If you want real time updating + a database that can be used by multiple phones, you need a server. Unless you want to pay, I’d advise you use a Raspberry Pi running a node or apache server.

You can either use MySQL as the database (complicated and harder, but easier to add functionality such as data migration, search, filters etc etc), or you can slack off and just write all the data to a file.

Let’s take the simple route for now (writing data to the file).

I’d first write a simple node.js express app that serves an HTML file. Next, write the website interface (all the buttons, labels… etc). Then (if you want realtime) use a library such as socket.io to transfer data between the phones and your node server.

When the node server gets the data, it persists it to a file. Then when you want to retrieve the data, you’ll parse it using Node and then make it accessible through another HTML file.

Then if you really want to integrate it with MyCroft, you could write a custom skill (the website has some documentation on doing this).

Bottom line: MyCroft isn’t needed for this project. Build a mobile app or a website instead.