Zyra is a full-stack AI-powered news application that delivers personalized, context-aware news experiences using semantic search, AI summarization, and modern mobile UI.
It is built with React Native (Expo) on the frontend and FastAPI + PostgreSQL (pgvector) on the backend.
This project demonstrates production-ready architecture, async backend design, and applied AI (RAG-style retrieval)
- Cross-platform app (Android & iOS) using React Native (Expo)
- Modern UI with NativeWind (Tailwind-style styling)
- Dark / light mode (system-based)
- Tab-based navigation (Home, Topics, Saved, Profile)
- Offline-first experience with local caching
- Save / unsave articles
- Pull-to-refresh news feed
- Semantic search using vector embeddings (Sentence Transformers)
- AI-powered context-aware summarization
- RAG-style pipeline (retrieve → summarize)
- Supports natural-language queries over news content
- Automated RSS ingestion from multiple global sources
- Duplicate detection and de-duplication
- Article content extraction (HTML parsing)
- Category inference (rule-based NLP)
- Image extraction with multiple fallbacks
- Vector embedding generation at ingestion time
- JWT-based authentication
- Secure password hashing using bcrypt
- Protected routes with token validation
- CORS-enabled API for mobile clients
- React Native (Expo)
- Expo Router
- NativeWind
- AsyncStorage
- Axios
- FastAPI
- PostgreSQL
- pgvector
- SQLAlchemy (Async)
- JWT Authentication
- FastAPI Security (HTTPBearer)
- Sentence Transformers (
all-MiniLM-L6-v2) - Vector similarity search
- Extractive summarization (extensible to LLMs)
| Method | Endpoint | Description |
|---|---|---|
| GET | /health |
Health check |
| POST | /auth/register |
User registration |
| POST | /auth/login |
User login |
| GET | /news |
Fetch latest news |
| POST | /ai |
AI-powered question answering |
| POST | /user/preferences |
Save user interests |
DATABASE_URL=postgresql+asyncpg://user:password@host:5432/dbname JWT_SECRET=your-secret-key OPENAI_API_KEY=optional
git clone https://github.com/mdShakil2004/Zyra-AI-powered-news-platform.git
cd zyra/server
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
## Run the server:
uvicorn main:app --reload
#$ News Ingestion
python scripts/ingest_news.py
## Frontend
cd app
npm install
npx expo start
- Async-first backend to efficiently handle high I/O workloads
- Vector search over keyword search for improved semantic relevance
- Embeddings generated at ingestion time to minimize query latency
- Modular architecture for better maintainability and scalability
- Offline-first mobile UX to support real-world usage scenarios
- LLM-based abstractive summarization
- User-specific feed ranking based on preferences
- Chat history persistence
- Background task scheduling (Celery / worker-based jobs)
- Push notifications
- Premium subscription features
This project demonstrates:
- Real-world system design
- Applied AI beyond basic tutorials
- Secure authentication flows
- Scalable backend architecture patterns
- Production-grade mobile UI
- Industry-level engineering practices used in modern SaaS and AI-driven products
Md Shakil
Software Engineer | Backend & AI Systems
📧 Email: [email protected]
🔗 LinkedIn: https://linkedin.com/in/mdshakil2004
- ATS-safe
- Recruiter-friendly
- Interview-ready
- GitHub-professional
If you want, next I can:
- Optimize this README for GitHub stars
- Add screenshots section
- Write a case-study style README
- Rewrite for FAANG-style portfolio
Just tell me 👍