An application that consumes the News - API and displays news sources and articles.
Emmaculate Kamau
- Python
- Flask
- HTML
- CSS3
An IDE such as VS code with Python version 3 installed,a terminal and a browser.
- Clone the repository at here.
- Extract and open the folder on VS code or navigate to the folder on your terminal.
- On the terminal, create a virtual environment
python3 -m venv virtual
and activate itsource virtual/bin/activate
. NB virtual is the name of the environment. - Pip install dependancies highlighted on the requirements.txt by running
pip install -r requirements.txt
- Create a start.sh file in the root directory of the folder and define the api key. You can generate the api key from the News API here
- Run
chmod +x start.sh
and./start.sh
respectively on the terminal. - View the application on your browser through
http://127.0.0.1:5000
.
BDD focuses on how the user will interact with the application.
What you will see and experience:
- A landing page with a navbar, a Tech section, list of resources, What's new and a footer.
- The navbar contains links with various types of news articles. Click on the Kenya link and get redirected to view Kenyan news articles.
- The search form on the navbar allows the user to search for any article desired. Type in for example, shoes and submit. You will get redirected to a search page with the number of articles found related to shoes, article title, description and a link to the main article.
- On the News Sources Available, click to view articles from that particular source.
- The news articles are displayed on cards, with a title and a brief description. Click on read article or view more to get redirected to the main article or video on the source website.
- On the particular pages such as Kenya, a section of other articles are displayed, click on the titles to get redirected to the main articles.
- On the footer, click on the social icons to interact with the owners of the website.
To fix a bug or enhance an existing module, follow these steps:
- Fork the repo
- Create a new branch (git checkout -b improve-feature)
- Make the appropriate changes in the files
- Add changes to reflect the changes made
- Commit your changes (git commit -am 'Improve feature')
- Push to the branch (git push origin improve-feature)
- Create a Pull Request
If you find a bug or would like to request a new function, reach out to me via Email: emmaculatewkamau@gmail.com or on LinkedIn
Copyright (c) 2022 Emmaculate Kamau
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.