This will be my official entry for the #twiliohackathon!
GitHub Repository (MIT Licensed)
Stackshare
What is it?
A web app that helps educators request files from students. Simple!
Why?
As many schools across the globe have transferred to virtual classrooms due to COVID-19, platforms for online classrooms vary greatly. From Google Classroom, to Canvas, to Blackboard, and many, many others, one thing I noticed my school lacked with their current software was a simple file request service for homework. Most assignments ended up being requested by email, which as you can image became cumbersome quickly, given that teachers' inboxes are already messy and attachment sizes can grow large, especially with images.
One teacher asked that I look into file requesting services. Obviously, Dropbox came to mind, but this would require that every student setup their own Dropbox account (which would get pricey quickly). There is a "File Request" feature embedded in Dropbox, but to find that I had to skim through articles and help pages on Dropbox to get it working. There had to be a better way for teachers on a time crunch and with low technical skill.
While again, there are many full-classroom services, most file requesting applications I found online were clunky, poorly designed, and some were downright sketchy. I thought to myself, "surely there has to be a better way to do this."
And so, as the saying goes,
If you want something done right, you gotta do it yourself.
Goals
Of course, the Twilio Hackathon only lasts a month, so many features will extend beyond April. I would love to get a MVA up by the time this hackathon concludes though!
Simple interface
Many teachers often need assistance with tech-related problems. Therefore, the interface design should be plain and clear to mitigate confusion. I do all my logo and interface design myself, and I love doing it, so I'm excited to tackle this problem!
Few features
Educators shouldn't get bogged down with confusing configuration. Quick setup and quick onboarding is ideal so that teachers can get their online classroom rolling as fast as possible.
Low cost
If possible, I would love to keep this project 100% free, although it doesn't seem likely. Of course, it will be open source; but while Amazon S3 bucket storage is dirt cheap when you start small, it comes at a large cost as it scales.
Implementation
For now, I'm keeping this a web-only application, but in the future my goal is to make this a mobile application as well, most likely using NativeScript.
Frontend
The frontend is going to use Vue, mostly because it's the framework I'm most familiar with and integrates well with any stack. I'm trying to decide whether to use Gridsome or Nuxt at the moment.
Database
The user data and other metadata will be implemented in MongoDB's serverless Stitch platform, so I don't have to make my own server and host it on Heroku or some other PaaS. I'd like to focus on the frontend for now. In addition, Stitch provides a fantastic GraphQL endpoint to query your MongoDB Atlas databases. (Also, as with Vue, I'm already familiar with Stitch.)
Storage
Since files can come in any shape or size, I'm simply going to use an Amazon S3 bucket. This is one part of the stack I'm not so familiar with, so I guess it's time to learn some AWS APIs!
Deployment
The frontend will be hosted on Netlify, my static site host of choice.
Email and SMS
Here comes the important hackathon-related part! The application will use Twilio's versatile and simple-to-use APIs for requesting files via Email and SMS. I haven't quite figured out how link generation for accessing a unique page to drop files is going to work, but if someone knows a solution let me know!
A quick thank you to readers and Twilio/DEV employees
I'm super pumped about this hackathon, and I can't thank the people over at Twilio and DEV enough for putting this on! We're all in a unique and sad situation at the moment with COVID-19 going on, but I know we can all persevere through it, and I hope to see some fantastic projects come out of this hackathon that can really help people.
God bless!
Top comments (6)
Just FYI: If this eventually (ever) goes into production, there are some regulatory hurdles to clear: Student Privacy Laws: What District & School Administrators Need to Know
Ok, interesting. I'll definitely keep this in consideration.
I love this idea. Kids are still learning skills such as follow-through and time management, so having a digital tool to "nag" students until they turn it in is a good way to bridge that gap. Well done, Peyton.
😄
Hey, that's terrific, you should checkout firefox's open source send project as inspiration maybe
Interesting, I've never seen that before but I really like the simplicity of the interface. I suppose my app is pretty much the reverse of what this is! 😆