Welcome to the Strapi Community @Christopher101 
To try answer some of your questions.
- You will need to have a database to store values that are saved in the application. Else each time you would restart you would lose all the data, think of it like persistent storage. Like RAM vs a Harddrive.
- You can use your own RESTpoints etc from a collection or your own check out the docs here.
REST API | Strapi Documentation
It will take what’s in the database and from there and translate to JSON which the frontend can use.
Is the simplest answer.