Inspiration

Twitter has become a primary channel for discovering what's happening in the world today. The way we express ourselves in those few characters can evoke different emotions that profoundly shape public discourse. Whether strategizing for your next presidential campaign or seeking to convey your next big idea, MediaPilot is your personal assistant to ensure your tweets are positively received by your intended audiences.

What it does

After drafting your tweet in the UI, MediaPilot performs analysis of the your draft by combining sentiment analysis with topic extraction. The NLP model is trained on your personal past Twitter data and runs a personal ML model on your draft to predict the number of likes and engagement your tweet would receive.

How we built it

  • React for frontend
  • Python Flask for backend.
  • NLTK library to conduct sentiment analysis and topic modeling.
  • Scikit-learn for machine learning.

Challenges we ran into

We ran into challenges working with MindsDB. Unfortunately, due to syntax and computer compatibility issues, we were unable to use this product. We also attempted to use OpenAI's API for topic modeling. In the end, we decided against using the API because it didn't group the topics properly.

Accomplishments that we're proud of

We're proud of the way we've been able to learn and experiment quickly with new technologies. For some of us, it was our first time using React and experimenting with new tools such as MindsDB and OpenAI's API. We built something that combined our interests in NLP and full-stack development, taking our software development skills to the next level. Overall, we enjoyed collaborating and bonding over creating this project.

What we learned

We learned how much fun it can be to build something we've never tried before and just keep learning along the way.

What's next for MediaPilot

There are many exciting features that can be added, including recommendations of how to edit your tweet to make the words align better with your intended tone and mood. Furthermore, fine-tuning the model would improve the accuracy. Upgrading the database to cloud storage would allow for a greater training capacity of our models as well.

Share this project:

Updates