Skip to content
Newsquirrel - News reading made simple
TypeScript JavaScript HTML Dockerfile CSS DIGITAL Command Language Shell
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci
public
readme-assets
src
types/react-powerplug
.coveralls.yml
.dockerignore
.env.production
.gitignore
.graphconfig.yml
.travis.yml
Dockerfile
README.md
images.d.ts
jest.config.js
newsquirrel.com
nginx.conf
package.json
run.sh
svgTransform.js
tsconfig.json
tslint.json
yarn.lock

README.md

Newsquirrel

TravisCI style: styled-components Redux Typescript

A Refreshingly simple News reader.

Website Front

Features

  • Read News Headlines from 7 different countries( US, UK, IN, FR, DE, AU, CA).
  • Switch between news categories easily.
  • Three different reading Modes (Comfortable, Compact and Image free).
  • Night mode for a pleasant news reading experience.
  • Responsive and built from the ground up to run seamlessly on mobiles, tablets and desktop.
  • QuickPreview for instantly viewing News articles.
  • Powered by News API, Search for articles from over 30,000 news sources and blogs.

Getting Started

Clone the project locally and the follow the steps below for dev/build.

Installing

Get started by installing the project dependencies. You can alternatively use npm for dev & build.

yarn install

Running in dev mode

yarn run start

To generate a production build

yarn run build

Built With

The Newsquirrel is built using some of the best in class tools and frameworks

  • React - JavaScript library for building user interfaces.
  • Typescript - Typings System.
  • Emotion - The Next Generation of CSS-in-JS
  • Apollo - Build a universal GraphQL API on top of your existing REST APIs
  • Prisma - Build a GraphQL server with any database
  • Graphql - A query language for your API
  • Docker - Build, Manage and Secure Your Apps Anywhere. Your Way
  • Kubernetes - Production-Grade Container Orchestration

Architecture

  • Web - This is the front end app hosted on NGINX and is where all the action starts.
  • Newsapi - Apollo-Server is responsible for handling all the requests coming from the web app. The server talks to the news API and caches the data on a MYSQL db for a faster data retrieval.
  • Prisma Service - A GraphQL endpoint which the newsapi uses for storing the data on MYSQL db. It acts a ORM layer for the MYSQL db.
  • Database - A MYSQL database used for caching purpose.

Architecture Diagram

Site

Docker Ready

Both the front-end app as well as the application server are Dockerized and can easily be deployed to any Orchestration engine of choice. The App (http://squirrel.prabhumurthy.com) is currently deployed to a Kubernetes Cluster on Google's Cloud platform.

What is coming next

  • Ability to share news articles on Social Media.
  • Integration with Pocket API to save news for later reading.

Authors

License

This project is licensed under the MIT License - see the LICENSE.md file for details

You can’t perform that action at this time.