An intelligent content aggregation platform that brings together news, academic papers, and books with AI-powered summaries and personalized recommendations.
- π° News Aggregation - Stay updated with latest news from multiple sources
- π Academic Papers - Access thousands of research papers and journals
- π Book Discovery - Find and explore books across all genres
- π€ AI Summaries - Get instant AI-generated summaries using Google Gemini
- πΎ Save & Organize - Save content and organize into collections
- π Daily Briefing - Personalized AI-generated daily content briefing
- π¬ Comments - Engage with content through comments
- π Search - Global search across all content
- π€ User Profiles - Customize preferences and reading habits
- π Admin Dashboard - Analytics and user management
- Next.js 14 - React framework with App Router
- React 18 - UI library
- TypeScript - Type safety
- Framer Motion - Smooth animations
- Glassmorphism UI - Modern, clean design
- Node.js - Runtime environment
- Express.js - Web framework
- MongoDB Atlas - Cloud database
- Mongoose - ODM for MongoDB
- JWT - Authentication
- Google Gemini AI - AI-powered features
- Node.js 18+ installed
- MongoDB Atlas account (free tier)
- Google AI Studio API key (free)
- Clone the repository
git clone https://github.com/vedant21-ctr/ReadStream.git
cd ReadStream- Setup Backend
cd readstream-backend
npm install
# Create .env file
cp .env.example .env
# Add your MongoDB URI and API keys- Setup Frontend
cd readstream-frontend
npm install- Start Development Servers
Terminal 1 - Backend:
cd readstream-backend
npm run devTerminal 2 - Frontend:
cd readstream-frontend
npm run dev- Open your browser
http://localhost:3000
PORT=5001
MONGODB_URI=your_mongodb_atlas_uri
JWT_SECRET=your_jwt_secret
JWT_EXPIRE=7d
GOOGLE_AI_API_KEY=your_google_ai_key
FRONTEND_URL=http://localhost:3000NEXT_PUBLIC_API_URL=http://localhost:5001/apiReadStream/
βββ readstream-backend/ # Express.js backend
β βββ config/ # Database configuration
β βββ controllers/ # Route controllers
β βββ middleware/ # Custom middleware
β βββ models/ # Mongoose models
β βββ routes/ # API routes
β βββ services/ # Business logic
β βββ server.js # Entry point
β
βββ readstream-frontend/ # Next.js frontend
β βββ app/ # Next.js app directory
β β βββ login/ # Login page
β β βββ signup/ # Signup page
β β βββ news/ # News page
β β βββ journals/ # Journals page
β β βββ books/ # Books page
β β βββ saved/ # Saved items
β β βββ collections/ # Collections
β β βββ daily-brief/ # Daily briefing
β β βββ profile/ # User profile
β β βββ admin/ # Admin dashboard
β β βββ content/[id]/ # Content detail
β βββ components/ # Reusable components
β βββ lib/ # Utilities & API client
β
βββ README.md
POST /api/auth/signup- Register new userPOST /api/auth/login- Login userGET /api/auth/me- Get current user
GET /api/news- Get news articlesGET /api/journals- Get academic papersGET /api/books- Search booksGET /api/content/:id- Get content detailsGET /api/content/:id/summary- Get AI summary
GET /api/saved- Get saved itemsPOST /api/saved- Save contentGET /api/collections- Get collectionsPOST /api/collections- Create collectionGET /api/daily-brief- Get daily briefingGET /api/recommendations- Get AI recommendations
GET /api/admin/users- Get all usersGET /api/admin/analytics- Get platform statistics
Uses Google Gemini AI to generate concise 3-4 sentence summaries of any content.
AI-generated personalized briefing based on user preferences and reading history.
Intelligent content recommendations based on saved items and user behavior.
- Glassmorphism - Modern frosted glass effect
- Neutral Colors - Clean white, gray, and soft black
- Accent Color - Indigo (#6366f1)
- Typography - Inter font family
- Animations - Smooth Framer Motion transitions
| Page | Features |
|---|---|
| Home | Hero section, features showcase, CTA |
| News | Browse news with search & pagination |
| Journals | Academic papers with filters |
| Books | Book search and discovery |
| Content Detail | Full article, AI summary, comments |
| Saved | View saved content with filters |
| Collections | Organize content into collections |
| Daily Brief | AI-generated personalized briefing |
| Profile | User settings & preferences |
| Admin | Analytics & user management |
- JWT token-based authentication
- Password hashing with bcrypt
- Protected API routes
- CORS configuration
- Input validation
- MongoDB injection prevention
- Push code to GitHub
- Import project in Vercel
- Add environment variables
- Deploy!
- Push code to GitHub
- Create new Web Service in Render
- Add environment variables
- Deploy!
- Backend response time: < 100ms
- AI summary generation: 2-3 seconds
- Page load time: < 1 second
- Optimized database queries with indexes
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License.
Vedant S
- GitHub: @vedant21-ctr
- Google Gemini AI for AI features
- MongoDB Atlas for database hosting
- Vercel for frontend hosting
- Render for backend hosting
Made with β€οΈ by Vedant S
β Star this repo if you find it helpful!