Skip to content

Latest commit

 

History

8 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

NovaNews

A personalized news dashboard with AI-powered article summaries.


Live Links


What it does

NovaNews pulls in real-time headlines from NewsAPI and lets you browse by category (Technology, Business, Science) or search for anything. If an article catches your eye, you can hit a button to get a quick 2-sentence AI summary generated by Google Gemini. You can also create an account, log in, and save articles along with their summaries to your personal library — and remove them whenever you want.


Tech used

  • Frontend: React (Vite), React Router, Axios
  • Backend: Node.js + Express
  • Database: PostgreSQL on Neon, accessed through Prisma ORM
  • APIs: NewsAPI for headlines, Google Gemini 2.5 Flash for summaries
  • Auth: bcryptjs for password hashing, JWT for sessions
  • Deployed on: Vercel (frontend) + Render (backend)

Running it locally

Just the frontend (easiest)

The frontend is already pointing to the live backend on Render, so you don't need to set anything up on the backend side.

git clone [https://github.com/AFEEFAMT/novanews]
cd novanews/frontend
npm install
npm run dev

Open http://localhost:5173 and it should just work.

Full local setup (frontend + backend)

If you want to run the backend yourself:

cd novanews/backend
npm install

Create a .env file in the backend folder:

PORT=5000
DATABASE_URL=your_postgresql_connection_string
NEWS_API_KEY=your_newsapi_key
GEMINI_API_KEY=your_gemini_api_key
JWT_SECRET=any_random_secret_string

Then:

npx prisma db push
npm run dev

For the frontend to talk to your local backend instead of Render, swap the Render URL in Dashboard.jsx, Library.jsx, Login.jsx, and NewsCard.jsx with http://localhost:5000.


About

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages