Skip to content

Yvad60/spotlight

Repository files navigation

Spotlight

Stay informed on the stories that matter most.

Spotlight is a news app that delivers the latest news from around the world in real time using the News API. You can personalize your news feed and get breaking news from different popular publishers in a few clicks.

Features

  • News by category: you will be able to see current news about different categories, trending, health, business, sport, and technology supported.
  • News by publishers: app support filtering stories by the publisher, with over 100 publishers available.
  • Publishers filtering: for a good user experience, the app provides a way to search and select publishers.
  • News by language: app support filtering stories written in a certain language, English and French are currently supported.
  • News by a search keyword: the app support searching news related to a certain topic by search.
  • Displaying articles: for every selected article the user will be able to read to see main metadata about the article and read the article from its original source.

Technologies

  • The News API: the source of all data.
  • Typescript: the main programming language.
  • React: the library for building the user interface.
  • React-router: the framework for generating routes in React.
  • Redux: the state management solution.
  • Tailwind CSS: the framework for styling.
  • Vite: the bundler and compiler.
  • pnpm: the package manager.
  • ESLint: the framework for enforcing good coding styles
  • Prettier: the code formatter.

Development setup

This project uses pnpm as the package manager. If you don't have it already you can.

npm i -g pnpm

Install project dependencies

pnpm install

Run the project in a development environment

pnpm dev

The project should start on the http://localhost:5173