The main idea was my idea, that is Blake Mallory's idea. I got the idea from being the Academic Chairman of my fraternity. In that role, I am responsible for holding brothers who have under performed academically accountable, part of that involves them sending me signs, such as photos, of them taking steps to improve. This often becomes hard to manage, and after seeing apps like CamScanner, and after learning about WebAssembly, I had the idea to make an app to solve this issue by making a webapp.
What it does
The app allows a user to either submit an existing photo, or take a new one with their device. This image is then processed by OpenCv and transformed so that it can be easily read. This file is then submitted to a server for storage and categorization.
How we built it
The app was built around docker. There are three containers, one for the web app, one for the rest server, and one for the database. These containers all communicate to make the whole product. The web app was made using Vue.js and OpenCv and built on a debian docker image. The rest server was built using python, flask, and a debian docker image. The database was a postgresql database image.
Challenges we ran into
The first major challenge we faced was getting OpenCV to work. Since WebAssembly, the technology that makes running OpenCV in the web browser possible is relatively new, the resources online were almost non existent. The next issue we had was CORs, as we had not had a lot of experience with it in the past and the error messages were sometimes unclear. Lastly, we had an issue with posting the scanned canvas to the server and spent a long period on time on that issue.
Accomplishments that we're proud of
We created a unique, challenging, relatively cutting edge piece of technology that has potential for the future. We also learned a great deal.
What we learned
We learned or improved on Vue.js, OpenCv, Python Flask APIs, and Docker.
What's next for FileBuddy
We enjoyed working on this project, and plan on cleaning up the rough edges and bringing FileBuddy to the full vision we had at the start.