Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/neeldevenshah/newspulse


https://github.com/neeldevenshah/newspulse

Last synced: 21 days ago
JSON representation

Awesome Lists containing this project

README

        

# NewsPulse

NewsPulse is a modern news application built using the MERN stack (MongoDB, Express.js, React.js, Node.js). It provides users with a platform to read and manage news articles from various sources. The application features a clean and intuitive interface, allowing users to stay up-to-date with the latest news.

## Table of Contents

- [Features](#features)
- [Tech Stack](#tech-stack)
- [Installation](#installation)
- [Usage](#usage)
- [Contributing](#contributing)
- [License](#license)

## Features

- **Browse News Articles**: Read news articles from multiple categories.
- **Search Functionality**: Find specific articles with a powerful search feature.
- **Article Management**: Save your favorite articles and manage them.
- **User Authentication**: Secure sign-up and login to access personalized features.
- **Responsive Design**: Optimized for both desktop and mobile devices.

## Tech Stack

- **Frontend**: React.js
- **Backend**: Node.js with Express.js
- **Database**: MongoDB
- **Authentication**: JWT (JSON Web Tokens)
- **Styling**: CSS

## Installation

To get started with NewsPulse, follow these steps:

1. **Clone the Repository**

```bash
git clone https://github.com/yourusername/newspulse.git
```

2. **Navigate to the Project Directory**

```bash
cd newspulse
```

3. **Install Backend Dependencies**

```bash
cd backend
npm install
```

4. **Install Frontend Dependencies**

```bash
cd ../frontend
npm install
```

5. **Set Up Environment Variables**

Create a `.env` file in the backend directory and add the following variables:

```env
MONGO_URI=your_mongodb_uri
JWT_SECRET=your_jwt_secret
NEWS_API_KEY=your_news_api_key
```

6. **Run the Application**

- Start the Backend Server

```bash
cd backend
npm start
```

- Start the Frontend Development Server

```bash
cd ../frontend
npm start
```

7. **Access the Application**

Open your browser and navigate to [http://localhost:3000](http://localhost:3000) to access NewsPulse.

## Usage

- Sign Up or Log In: Register a new account on the sign-up page or log in with existing credentials.
- Explore News: Browse news articles by category or use the search bar to find specific articles.
- Manage Articles: Save your favorite articles and view them in your profile.

## Contributing

We welcome contributions to NewsPulse! If you’d like to contribute:

1. Fork the repository.
2. Create a new branch (`git checkout -b feature-branch`).
3. Make your changes and commit (`git commit -am 'Add new feature'`).
4. Push to the branch (`git push origin feature-branch`).
5. Create a new Pull Request.

## License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.