Intro to Web Development, News Café (A News Aggregator Web-App)


  • Web Development


Mentors :

  • Molina Dhembla

  • Gurpreet Singh Wadhwa

  • Dhananjay Kejriwal

Mentees :

  • 4


"The first half of this project will involve extensive use of the python Django framework in developing a news aggregator web application. Mentees will have to learn how to use Django for basic web development. Learning how to access APIs in Python will be required for obtaining news articles.

The second half will focus on frontend development, particularly in React js or Angular, this is flexible and mentees can choose which software they wish to learn and use for developing the frontend. Learning how to integrate this with the Django backend is the major task.
Extra: Mentees can attempt hosting the final app (possibly via Heroku) depending on their progress and interest. This will require learning how to handle a cloud-based PostgreSQL database.

Some resources-
For python beginners:
https://youtu.be/_uQrJ0TkZlc
https://www.youtube.com/playlist?list=PL-osiE80TeTt2d9bfVyTiXJA-UTHn6WwU
Django documentation and tutorial:
https://docs.djangoproject.com/en/4.0/
https://www.youtube.com/playlist?list=PL-osiE80TeTtoQCKZ03TU5fNfx2UY6U4p
Angular basics:
https://youtu.be/k5E2AVpwsko
Prerequisites:
Experience with basic python programming and/or frontend development with React js/Angular
Experience in using Django framework
*these are not hard requirements, enthusiasm and willingness to learn matters most*

Tentative Timeline :

Week Work
Week 1-2 Learning Django. We will provide resources (video tutorials and documentation) which mentees can use if they will be using Django for the first time in this project. Mentees will be expected to start basic implementation in the second week.
Week 3-4 Working on developing the news-aggregator backend on Django and completing a provisional (working) backend
Week 5 Learning frontend design with React js or Angular (based on what mentees want to learn/use). We will provide the resources.
Week 6-8 Developing frontend design and integrating it with the backend on Django Extra: tie up loose ends, touch up the frontend with interactive elements and mentees can attempt hosting the app (possibly via Heroku) depending on their progress and interest