Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rezwanhossen/newsgrid
newaGrid is a morden news platfro affective user an eyes personalize way to access and shear news.
https://github.com/rezwanhossen/newsgrid
emailjs firebase jwt-token react-table reactjs redux stripe-js tanstack-react-query
Last synced: about 1 month ago
JSON representation
newaGrid is a morden news platfro affective user an eyes personalize way to access and shear news.
- Host: GitHub
- URL: https://github.com/rezwanhossen/newsgrid
- Owner: rezwanhossen
- Created: 2024-09-16T18:59:38.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2024-11-09T06:56:23.000Z (2 months ago)
- Last Synced: 2024-11-09T07:33:49.148Z (2 months ago)
- Topics: emailjs, firebase, jwt-token, react-table, reactjs, redux, stripe-js, tanstack-react-query
- Language: JavaScript
- Homepage: https://newsgrid-95245.web.app
- Size: 2.51 MB
- Stars: 1
- Watchers: 1
- Forks: 4
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
**NewsGrid**:
---
### **NewsGrid Setup Documentation**
---
#### **1. Introduction**
**NewsGrid** is an advanced news aggregator platform offering real-time, categorized, and personalized news feeds. Users can interact with news content by submitting, liking, sharing, and bookmarking articles, all while staying updated on trends, weather, and breaking stories.#### **2. Project Overview**
**NewsGrid** serves as a comprehensive news hub, making the latest news accessible across multiple categories and allowing user-generated content, moderated by admins. This documentation provides a complete overview of NewsGrid's features, functionality, and development guidelines.#### **3. Features in Detail**
1. **Real-Time News**
- Constant updates with the latest articles to keep users informed with current news.2. **Categorized News**
- Allows sorting news by categories like Politics, Sports, and Entertainment.3. **Voice Search**
- Users can search for news through voice commands for better accessibility.4. **Users News**
- Dedicated section for articles contributed by users, displayed after admin approval.5. **My News**
- Users can submit articles that, upon admin approval, are displayed on the platform.6. **Like, Comment, Share**
- Social engagement options allow users to interact with articles.7. **JWT Authentication**
- Provides secure access to user accounts and restricted pages using JWT-based sessions.8. **Private and Admin Routes**
- Separate routes for general and admin users to ensure platform security.9. **Payments**
- Users can make payments for premium features with secure gateways.10. **Report via Email.js**
- Users can report issues or send feedback directly through email.11. **Social Sharing**
- Articles are easily shareable on popular social media platforms.12. **Personalized News**
- Custom recommendations page tailored to user interests.13. **Bookmarking**
- Allows users to save articles for later access in their bookmark collection.14. **Audio News**
- Users can listen to news articles for an improved accessibility experience.15. **Date-Based Search**
- A search function that filters news by specific publication dates.16. **Breaking News**
- Real-time stream for critical, urgent news stories.17. **Trending News**
- Displays popular topics based on user interactions and engagement.18. **Recommended News**
- Personalized entertainment recommendations to enhance user experience.19. **Video News**
- Integrates YouTube live channels for users to watch live news.20. **Location-Based Weather News**
- Displays local weather updates based on the user's location.21. **User Dashboard**
- **Add News**: Users can submit news articles, reviewed by the admin before publication.
- **Profile Management**: Users can update their profile information.
- **Category-Based News Selection**: Personalized feed by selecting preferred news categories.22. **Admin Dashboard**
- **User Management**: Admins can view all users and assign roles.
- **Payment History**: Admins have access to all transaction records.
- **News Moderation**: Admins review and approve user-submitted news for content quality.---
#### **4. Architecture & Technologies**
- **Frontend**: React.js for responsive, interactive UI optimized for dynamic content.
- **Backend**: Node.js and Express.js handle server operations, authentication, and API endpoints.
- **Database**: MongoDB for user data, news content, payment history, and bookmarks.
- **Authentication**: JWT-based authentication for secure sessions.
- **Payment Gateway**: Stripe or PayPal for secure transactions.
- **Email Service**: Email.js for easy feedback and issue reporting.
- **Social Media Integration**: Enables social sharing on Facebook, Twitter, and LinkedIn.
- **Voice Recognition**: Hands-free search and interaction using voice recognition.
- **Audio Playback**: Text-to-speech APIs for audio playback of news content.---
#### **5. User Guide**
**Home Page Features**
- **Real-Time News**: Constantly updates content to display the latest news.
- **Filter by Category**: Users can filter news by specific categories.
- **Voice Search**: Enables voice-based searching with a microphone icon.
- **Interact with News**: Like, comment, and share news articles.
- **Bookmark Articles**: Save articles to read later.
- **Audio News**: Listen to articles using the "Listen" option.
- **Date-Based Search**: Calendar-based search for specific publication dates.
- **Trending and Breaking News**: Separate sections for trending and urgent news.
- **Video News**: Watch live news channels on the website.
- **Local Weather Updates**: Location-based weather updates on the home page.**User Dashboard**
- **Submit News**: Users can contribute articles for admin review.
- **Manage Profile**: Edit personal details and account settings.
- **Category Preferences**: Users can select preferred categories for a customized feed.**Admin Dashboard**
- **Manage Users**: Admins can update user roles and permissions.
- **Approve or Reject News**: Admin controls user-submitted news to maintain quality.
- **Payment Tracking**: Admins can review all platform transactions.---
#### **6. NewsGrid Setup Instructions**
##### **1. Client Side Setup**
1. **Clone the Client Repository**
```bash
git clone https://github.com/rezwanhossen/newsGrid.git
```2. **Navigate to the Client Directory**
```bash
cd newsGrid-client
```3. **Install Dependencies**
```bash
npm install
```4. **Configure Environment Variables**
Create an `.env.local` file and include the following:
```env
VITE_apiKey=
VITE_authDomain=
VITE_projectId=
VITE_storageBucket=
VITE_messagingSenderId=
VITE_appId=VITE_IMGBB_key=
VITE_pymeny=VITE_NAIMUL_API_KEY=
VITE_Breaking_apiKey=
VITE_recommended_apiKey=
VITE_Video_apiKey=
```5. **Run the Client Application**
```bash
npm run dev
```##### **2. Server Side Setup**
1. **Clone the Server Repository**
```bash
git clone https://github.com/rezwanhossen/newsGrid-server.git
```2. **Navigate to the Server Directory**
```bash
cd newsGrid-server
```3. **Install Dependencies**
```bash
npm install
```4. **Configure Environment Variables**
Create an `.env` file with the following keys:
```env
DB_User=
DB_Pass=
ACCESS_TOKEN_SECRET=
STRIP_KEY=
```5. **Run the Server Application**
```bash
nodemon index.js
```---
### **NewsGrid Team Contributors**
1. **Rezwan Hossain**
**Role**: Team Leader
**GitHub**: [github.com/rezwanhossen](https://github.com/rezwanhossen)2. **Naimul Islum Emon**
**Role**: Contributor
**GitHub**: [github.com/Naimul02](https://github.com/Naimul02)3. **Mahfuzur Islam**
**Role**: Contributor
**GitHub**: [github.com/mafujur-rahman](https://github.com/mafujur-rahman)4. **Md Hasan**
**Role**: Contributor
**GitHub**: [github.com/ahsan200t](https://github.com/ahsan200t)5. **Rafiet Rana**
**Role**: Contributor
**GitHub**: [github.com/rafietrana](https://github.com/rafietrana)---