What I built
In the time of COVID 19, it's really easy to feel anxious, overwhelmed and uncertain, specially with all the negative news around you. In an effort to help everyone focus on the positives, I created Good News Today!. It's a website where users can enter their Name, Number and Country, and every morning at 9 AM, a text will be sent to them with some good news about Coronavirus within their country. I wanted to help reduce misinformation by providing news articles from credible sources. And instead of scrolling through numerous news articles and feeling stressed, I wanted the users to feel calmer after reading some good news. Because no matter how dark it gets, there's always some good in the world ๐.
Category Submission: Interesting Integrations
- NewsAPI : To query all COVID19 related news articles, with specific query params.
- node-cron : To schedule and automate text delivery that queries the database every minute to look for upcoming users.
- Sentiment analysis : To read the incoming news and deliver it to the user only if it is good.
Link to Code
How I built it (what's the stack? did I run into issues or discover something new along the way?)
I am a relatively new developer, and getting started with the project was definitely challenging, but it was so enjoyable. To develop my application I used some React for the frontend, Node.js, Express, MongoDB and several NPM libraries.
I learnt that it's super important to break big problems down into smaller parts and work my way up from there (which is what I did to GSM encode my string, figure out scheduling with moment.js and use sentiment analysis.)
I also learnt that it's really important to read documentation and ask for help!
Additional Resources/Info
I really want to thank the Twilio team, specially Dominik Kundel for being extremely patient in answering all my questions. In the future, I want to deploy this app with proper linting, integrate it with other NewsAPIs and statistics, and also create provision to chat with the server through SMSs.
Top comments (0)