News-Site is a dynamic web application built with Django that provides users with up-to-date news headlines from various sources. This project leverages the powerful NewsAPI to fetch and display the latest news, making it easy for users to stay informed on current events. The site is designed with a modern, visually appealing Neumorphism UI, enhancing the user experience.
- Real-Time News Updates: Fetches and displays the latest news headlines from various categories and sources.
- User-Friendly Interface: Designed with Neumorphism UI to provide a modern and clean look, enhancing readability and navigation.
- Customizable Backend: Easily modify the sources and categories of news through the Django admin panel.
This project utilizes the NewsAPI to retrieve news data.
Note: An API key is required to use the NewsAPI. You can obtain your API key here. Once you have the key, place it inside
main/views.py
to enable the API integration.
Check out the live version of the News-Site here.
To install and run the News-Site on your local machine, follow these steps:
- Clone the Repository: Use
git clone
to download the project files.
git clone https://github.com/PyPranav/News-Site
- Set Up the Environment: Ensure you have Python and Django installed on your machine. Create a virtual environment and activate it:
python -m venv env
source env/bin/activate # On Windows, use `env\Scripts\activate`
- Install Dependencies: Navigate to the project directory and install the required dependencies:
pip install -r requirements.txt
- Add Your API Key: Place your NewsAPI key in the
main/views.py
file:
# In main/views.py
API_KEY = 'your_api_key_here'
- Run the Server: Start the Django development server to view the site locally:
python manage.py runserver
- Access the Site: Open your web browser and go to
http://127.0.0.1:8000/news/
to view the site.
The site’s design is based on the Neumorphism UI, which is a popular modern design trend that combines flat design with subtle, extruded shapes to create a soft, clean look. You can explore and customize this design further using resources from here.
- Search Functionality: Implement a search bar to allow users to search for specific news topics or keywords.
- User Accounts: Add user authentication to enable personalized news feeds based on user preferences.
- Category Filters: Allow users to filter news by different categories such as Technology, Sports, Entertainment, etc.
Contributions are welcome! If you have ideas for new features or improvements, please submit a pull request or open an issue to discuss your suggestions.