Table of Contents
NexTechNews is a news aggregator that provides the latest news from the world of technology. It is built using Next.js, Tailwind CSS and NextUI. It uses the NewsAPI to fetch the latest news from various sources. The website is hosted on AWS EC2 instance. (Our website is not fully responsive yet, so please view it on a laptop or desktop for the best experience.)
- Get Top Headlines from the world of technology
- Search for news by keywords
- Filter news by source
- Sort news by date, popularity and relevancy
- Explore news by date ranges
- Read full article on our website itself
- Switch between light and dark mode
- Get Started button for easy navigation
Follow these instructions to set up and run the project locally on your machine.
-
npm
npm install npm@latest -g
-
Clone the repository:
git clone https://github.com/mittal-ishaan/dotflo-assignment.git
-
Navigate to the project directory:
cd nextechnews
-
Create a virtual environment (optional but recommended -- Step 4-5):
python -m venv venv
-
Activate the virtual environment:
-
On Windows:
venv\Scripts\activate
-
On Unix or MacOS:
source venv/bin/activate
-
-
Install the required packages:
npm install
-
Run the development server:
npm run dev
└── nextechnews/
├── public
│ ├── images/
├── src/
│ ├── app/
│ │ ├── favicon.ico
│ │ ├── globals.css
│ │ ├── layout.jsx
│ │ ├── providers.jsx
│ │ └── page.jsx
│ └── components/
│ ├── Home/
│ │ ├── Cards.jsx
│ │ ├── NewsList.jsx
│ │ ├── NewsPreview.jsx
│ │ ├── NewsProviders.jsx
│ │ ├── ListboxWrapper.jsx
│ ├──Explore.jsx
│ ├──icons.jsx
│ ├──NavBar.jsx
│ ├──Search.jsx
│ ├──SearchIcon.jsx
│ └── Headline.jsx
├── .gitignore
├── README.md
├── jsconfig.json
├── .eslintrc.json
├── .env.local
├── next.config.js
├── package-lock.json
├── package.json
├── postcss.config.js
└── tailwind.config.js
- Make a basic UI
- Add NewsAPI.ai
- Add search functionality
- Add full article view functionality
- Add filter, sort, date range functionality
- Add dark mode
- Add get started button
- Add responsiveness for laptop and desktop
- Add responsiveness for mobile and tablet
Ishaan Mittal - [email protected]