Sean, a classmate of ours, pitched an idea in our Tech Entrepreneurship class to help his mom pay for an insurance deductable. We believed in what he was trying to do, and who he was trying to help.
We want to make sure that nobody misses a special event again. Birthday? No problem. Graduation? We got you. New baby girl? You better believe it.
What's more personal than a handwritten card? Nothing.
What it does
CardSlack allows you to easily register through Facebook and instantly schedule card orders for the events you don't want to miss in your life six months down the road. Once you let us know, we'll handle the rest. Two weeks before the event we'll mail you the card and a pre-stamped envelope.
In an effort to make this day as special as possible, if you're planning for a birthday or congratulating someone we'll make event recommendations. If there's a Mariah Carey concert that day, you'll know!
How we built it
We used React to make a single page application that seamlessly integrates with Facebook authentication to make a truly simple user experience. On the backend, we used Node.js with Express.js and MongoDB to create easy-to-use endpoints for availability and security. We support persistence on the front- and back-ends with smart sessions.
In general, we designed our app to be able to scale, because this project does not end at VandyHacks. We created a well-architected application that allows for extensibility and reusability. We created more APIs than we needed to allow for scaling the application in a meaningful way.
Challenges we ran into
react-router (at points) was a nightmare. We couldn't figure out where we our routes were directing. Turns out we were missing two slashes.
It also turns out that it's really hard to authenticate with Facebook using Postman. That was a blocker for a while, and we couldn't figure out why. Cookies and redirection are hard when it's not in a browser.
Accomplishments that we're proud of
The whole thing! We are extremely happy that this application has the potential to live on past VandyHacks III and help Sean and his family. More specifically, we love:
- Beautiful user interface
- Facebook Authentication
- SeatGeek recommendations
- Secure session support
What we learned
- We're much better at react-router.
- We have a stronger understanding of MongoDB and integration with Express.js and Mongoose.
- SeatGeek's awesome APIs!
- Design implementation.
- Facebook Authentication.
What's next for CardSlack
- Admin support
- Payment support
- Notification and cancellation support
- Editing and deleting orders
- Visualizing potential cards