8000 GitHub - fan222/feedful
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

fan222/feedful

Repository files navigation

Feedful

[Feedful] heroku

Feedful is a full-stack web application inspired be [Feedly] feedlysite. Feedful is designed to give user interesting feeds articles both for fun and work. It uses Ruby on Rails for backend, and React-Redux for front-end.

splash splash

Features

RSS feeds

Feeds urls are store in database. Feedful uses Feedjira gem to fetch feeds. And new feeds is fetched and rendered dynamic. User will have the newest content all the time.

  • Everytime users enter the home page, a ajax request is sent to fetch all feeds' data.
  export const fetchAllFeeds = (success) => {
    $.ajax({
      method: "GET",
      url: "/api/feeds",
      success
    });
  };
  • At backend, Feedjira::Feed.fetch_and_parse function is called on feed-urls.
  feed_detail = Feedjira::Feed.fetch_and_parse(feed.url)
  • In order to get image sources for each articles of feeds, Feedful uses regex to get the image tag's src of original article.
  /<img.+src="([^"]+)"/.match(string)[1]

Categories

  • Feeds belong to different categories. Users can navigate through categories by clicking categories names tags tags

Article

With React-Modal, articles are rendered in a very clean way. Each time users click on a article block, a article detail will pop up from right.

  • This is accomplished through React-Modal's customStyles.
  const customStyles = {
    content: {
      right                       : '-100%',
      transition                  : '.5s',
    }
  };
  onModalOpen() {
    customStyles.content.left = 'auto';
    customStyles.content.right = '0';
  }
  • Since the content of fetched articles are strings, Feedful uses dangerouslySetInnerHTML to insert articles. In this way, articles have cleaner structure.
  <div dangerouslySetInnerHTML={this.dangerHtml(this.props.article)}/>

Collection

User can create and manage their collection.

  • Each time users click on add collection button

![add-collection] add_collection_button

a edit collection sidebar will appear. User can either create a new collection or add to an existed collection.

![collection-sidebar] new_collection

Users can also edit their collections by clicking edit button.

![edit] edit_button

Then users can delete a collection or a feed in a collection.

edit_page edit_page

Favorites

  • User can like and unlike articles so that they can come back easily.

User can like and unlike articles while they read articles.

like_button like_button

Then users can go to their favorite articles page to manage and read those articles

![like_page] favorites

Future Features

Mark as read

User can mark one or all articles as read.

Number of read

Count the number of read. Based on this, recommend popular articles to users.

More customization

Users can add their their feeds urls and customize the website style.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0