Newsallo is a platform that brings all of your favorite news sources into one beautiful and easy to read feed.
Newsallo v2 API - (currently private for security reasons) for the sake of simplicity the API will be covered in this README as well as the newsallo-api repo.
Newsallo is meant to be a place where you can gather all of you favorite news sources into one place instead of bouncing around to all your different news sites or apps. The idea came out of an increasing need for trustworthy news. The problem is not necessarily that news outlets have become untrustworthy, but the places that we find our news have become plagued with untrustworthy people pushing their questionable content on you. That's where Newsallo comes in. Newsallo bridges the gap between the publishers and the consumers, and does it in a way that looks and feels simialar to using the social networks that people like to consume their news with.
- React
- React Router
- React Moment
- Axios
- HTML
- Sass
- Netlify (Hosting)
- Node.js
- Express
- Axios
- Moment
- Sequelize
- Postgres (Database)
- Newsapi.org (data source)
- Heroku (Hosting)
The RESTful api currently has two end poins:
/api/update
to trigger a call to the newsapi.org API and update the latest news in the Newsallo database/api/SOURCE-ID/LIMIT
to retrieve news articles stored in the Newsallo database. SOURCE-ID takes a comma seperated list of "source ids" - source ids are slugified versions of the news outlets proper name i.e. BBC News -> bbc-news. Limit is optional and refers to the number of articles to return in total.
The Newsallo database is Postgres, containing one table to store all news articles. The articles table model can be seen below.
sourceID: {
type: DataTypes.STRING,
allowNull: false
},
sourceName: {
type: DataTypes.STRING,
allowNull: false
},
author: {
type: DataTypes.STRING
},
title: {
type: DataTypes.STRING,
allowNull: false
},
description: {
type: DataTypes.TEXT
},
url: {
type: DataTypes.STRING,
unique: true,
allowNull: false
},
urlToImage: {
type: DataTypes.TEXT
},
publishedAt: {
type: DataTypes.STRING
},
content: {
type: DataTypes.TEXT
}
Future updates to Newsallo will include:
- Social Functionality
- Adding the ability to follow people you trust on the platform, without the ability to see your follower/following count to minimize any sort of negative side effects caused by "influencers"
- More precise news feed control
- Allow users to look at sepreate feeds for sports, finance, technology, etc.
- Allow users to only see articles that have not been shown to them before.
- Allow users to save or favorite articles for later
Craig Melville - Portfolio