Git Product home page Git Product logo

secret-santa-for-facebook-messenger's Introduction

Secret Santa For Friends (In development)

A chatbot extension for Facebook Messenger Platform.

The Backstory

As holiday season approaches, me and my friends are getting together to celebrate Christmas, one of our traditions is Secret Santa gift exchanges. However, as people are getting busier and busier due to school and work; it is more and more challenging to gather everyone together to draw from a hat. This is not even half of the pain drawing from a hat presents to us.

So this year, we decided to look into alternative methods - online secret santa list generators, but looking through them I found a common problem: they all require email of the participants. We are sassy teenagers, who the heck still uses emails? Then I realized, wait a minute, we are all in a group chat, why not build a bot for our groupchat to streamline the way we celebrate this annual occasion! πŸŽ…πŸŽ…

Technologies

Here is a list of technologies I used to accomplish this project (Rank by whatever order I can think of.)

  • Express.js (Node.js)
  • EJS
  • MongoDB, interfaced with Mongoose
  • Facebook Messenger Extensions SDK
  • Facebook Webhook
  • Heroku
  • Moment.js
  • dotenv, request, body-parser
  • HTML, CSS, jQuery
  • VS Code, Github
  • WeUI
  • Json Web Tokens

Limitation (Important)

All users joining the party must have facebook chat enabled. Otherwise they will not recieve any system notifications.

Roadmap

Initial Release 1.0

  • Party creation and invitation features
  • Name distribution, reminders
  • Database storage
  • Deploy to Heroku
  • I just want something that works c:

Version 1.5 Public Release

  • API tokenization
  • Profiles
  • Help and more informations
  • Wishlists!
  • No bugss!

Version 2.0

  • Shift to a more modern frontend framework
  • Party Announcements! (No clue why this is necessary)
  • Gift recommendation based on wishlists!

Version 2.5

  • Customized Party rules (gift exchange, etc.)

Special Thanks

Special thanks to my friends for inspiring me, this one is for you guys:

  • Ivy Ma
  • Anthony Lai
  • Andrew Prathepan
  • Daniel Wu
  • Shannon Guo

Another shoutout to these two articles that helped me navigate the initial setup process for this extension: How To Create Your Very Own Facebook Messenger Bot with Dialogflow and Node.js In Just One Day and https://blog.messengerdevelopers.com/using-the-webview-to-create-richer-bot-to-user-interactions-ed8a789523c6

WHY NO REACT?

The project is too simple to need react, I had a pretty intense timeline, so I wanted a fast and brutal solution, that's why I used jQuery. But in the future I will definitely integrate other frontend frameworks and more buzzword worthy stuff.

secret-santa-for-facebook-messenger's People

Contributors

callmekungfu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

secret-santa-for-facebook-messenger's Issues

Bug regarding user form

Hey can you help with setting up the bot I already deployed it on heroku but it’s not working as it should It Keep sending me back message like this... You sent the message: "Join now".

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.