An Android RSS reader

Related tags

App binocularss
Overview

BinoculaRSS

This is an Android RSS reader application.

Installation

Install Android Studio, clone the project, and open the project. Follow any prompts that Android Studio gives you about installing a JDK or Android SDK.

You can choose to run the code on a physical Android device or an Android emulator.

Physical Device

Ensure that ADB is installed. This is so that Android Studio can communicate with your phone. You will need to activate developer mode. For instructions on how to install ADB, see the following article.

  1. Enable developer mode:
    • Go into About this Phone.
    • Find the Build Number heading, and click on it until a toast message pops up saying something along the lines of You are a developer.
  2. Go into developer settings (location varies by device), and enable USB Debugging.
  3. In Android Studio select the APP build configuration, select your device from the device drop down, and press the run button.

Emulator

Ensure that ADB is installed. This is so that Android Studio can communicate with the emulator. For instructions on how to install ADB, see the following article.

  1. Open the AVD Manager (Android Virtual Device Manager)
  2. Click Create Virtual Device
  3. Select any phone model and click Next
  4. Click Download next to an Android System image from the Recommended tab. We recommend Android R. Press Finish. Wait for the download to complete and click Next.
  5. Press Finish.
  6. In Android Studio select the APP build configuration on the top right, select your device from the device drop down, and press the run button.

Contribution

Naming Convention

  • Variables should be named in camelCase.
  • Functions should be named with camelCase.
  • Classes should be named with PascalCase.
Comments
  • Search function

    Search function

    This branch implements search functionality across all articles that the user is subscribed to. In order to get more accurate searches, I used a fuzzy string searching library called fuzzywuzzy (originally implemented in Python, but using a Java port). I didn't get a chance to implement filtering due to time constraints.

    https://github.com/xdrop/fuzzywuzzy

    opened by is-ahmed 2
  • ✂️ add url trimming

    ✂️ add url trimming

    Closes #16

    Added url trimming to AddFeedActivity.kt

    List of Changes:

    • Added StringOpeerations.kt operations file
    • Refactored AddFeedActivity.kt
    • Added UrlTrimTest.kt Unit test
    opened by simonchenwastaken 2
  • Articles disappearing adding them to the RSS feeds on first action

    Articles disappearing adding them to the RSS feeds on first action

    Describe the bug After you add a feed (and possibly in other instances as well), all of the articles from the added feed dissappear when you either "bookmark" or "mark as read" on any article in the feedGroup.

    To Reproduce Steps to reproduce the behavior:

    1. Start the app.
    2. Add a new feed.
    3. Refresh the article view or feed view.
    4. All the articles from the newly added feed, and the feed itselt should dissappear.
    5. Triggering an activity and then returning will cause the feed to reappear.

    Expected behavior After adding a feed, there should be no behaviour causing the articles and feed to dissappear, even if it is only for the UI.

    Screenshots/Video

    https://user-images.githubusercontent.com/34548959/142093723-e381fc5b-9f35-4e86-8dfe-471d8a3051c6.mp4

    bug 
    opened by hisbaan 2
  • Bookmarking

    Bookmarking

    This branch implements a bookmarks page where you can view articles that you have bookmarked. The way that it works currently is that when you toggle the flag icon to remove a bookmark, your changes won't be saved to the database unless you go back to the main menu and then back to the bookmarks page. Here's a picture of how each article would look, sorry for the pixelation.

    image

    opened by is-ahmed 2
  • Add data persistence.

    Add data persistence.

    Using a Room database (layer of abstraction for SQLite), this branch implements persistence to allow a user's feeds to be saved on app close and reloaded on app open. This means that the user saves bandwidth by not having to retrieve feeds every time the lifecycle renews. It also means that the user can still read old articles they have retrieved that have since been removed from the feeds they subscribe to. The system could even be extended to allow the user to read entire feeds that have been removed which the user has retrieved (in their last published state, of course). Here is a demonstration of the persistence in action:

    https://user-images.githubusercontent.com/34548959/139519294-020ace1f-a4d6-45d8-82f3-06b552b21003.mp4

    opened by hisbaan 2
  • Deleting a feed causes the article list to be cleared until refresh.

    Deleting a feed causes the article list to be cleared until refresh.

    Describe the bug Deleting a feed causes the article list to be cleared until refreshes.

    To Reproduce Steps to reproduce the behavior:

    1. Add two or more feeds.
    2. Go to the feed view.
    3. Delete one of the feeds.
    4. Go to article view.
    5. See that there are no articles.
    6. Articles will come back after a refresh.

    Expected behavior After deleting a feed, only articles from that feed should disappear.

    bug 
    opened by Benson-chou 1
  • Add dynamic open-source license information

    Add dynamic open-source license information

    This branch adds dynamic open-source license information. It is accessible via Settings > Open-Source Licenses. The list is generated upon compile time by a grade plugin as a JSON file, which is then used to render the list in the application.

    https://user-images.githubusercontent.com/34548959/143969911-3a10a991-6ea2-4cf5-a3cc-0bfbbba35c5c.mp4

    opened by hisbaan 1
  • Delete Feed DropdownMenu Button

    Delete Feed DropdownMenu Button

    This branch adds the ability to delete a feed by long pressing on it and clicking "Delete". This will remove it from the database and feedList, so it will no longer show up in the application and will need to be re-added if the user would like to see it again.

    opened by Benson-chou 1
  • Settings

    Settings

    This branch adds a settings activity. The main settings here are the theme and cache timings, but the provided composables allow for easy expansion in the future. This also implements the theming and cache timings in all the other activities. The settings also provide lots of information settings such as the open-source libraries used, links to the source code, releases, etc. There are some things not filled in with TODOs left in their place but this is intentional. We do not yet have all the information required to complete these items.

    opened by hisbaan 1
  • Remove direct access to MainActivity.* variables and access DB instead

    Remove direct access to MainActivity.* variables and access DB instead

    Previously, we were accessing MainActivity.feedGroup and other companion object variables. This is bad practice for clean code so instead, we should have each activity communicate with the database layer to retrieve the feeds on startup and write changes on exit. I also updated the Design Document with a section reflecting these changes.

    opened by hisbaan 1
  • Migrate the main codebase to Kotlin from Java

    Migrate the main codebase to Kotlin from Java

    This reimplements all of the code that we previously had into Kotlin. This includes the data classes, PullFeedTask, and MainActivity. It also more closely follows the solid design principles and has fewer code-smells by extracting long sections of code into different methods to split up the code base and make it more readable, and less interdependent.

    opened by hisbaan 1
  • Aspect ratio of pictures is not perserved on display size change.

    Aspect ratio of pictures is not perserved on display size change.

    Describe the bug The aspect ratio of the images next to articles and feeds in ArticleCard and FeedCard do not have a constant aspect ratio on different size phone screens. On one phone, it may be square, while on others, it can be a taller rectangle.

    To Reproduce Steps to reproduce the behaviour:

    1. Get a phone with a taller aspect ratio that has a thinner aspect ratio than 2:1.
    2. Open the application.

    Expected behaviour The aspect ratio should be consistent across all devices

    Screenshots Taller aspect ratio: unknown

    Wider aspect ratio: Screenshot_20211204-103639

    Notice that neither of these two have "square" images as is intended. One is too tall, the other is two wise, running the same code base.

    bug 
    opened by hisbaan 0
Releases(v1.0.0-beta)
Owner
tminions
On the Minionaire grindset
tminions
Flym News Reader is a light Android feed reader (RSS/Atom)

BEWARE: The original developer stopped the development of the app so I'm starting to work on it to improve it and maintain it. Flym News Reader Light

null 0 Jul 26, 2022
An Android RSS reader

BinoculaRSS This is an Android RSS reader application. Installation Install Android Studio, clone the project, and open the project. Follow any prompt

tminions 12 Oct 9, 2022
A Reeder copycat, in order to give Android an RSS reader similar to Reeder

A Reeder copycat, in order to give Android an RSS reader similar to Reeder, combines the interaction logic of Reeder with the design style of Material Design 3 (You).

Ashinch 1.5k Dec 31, 2022
Readow - Readow RSS Reader application. It’s fast and clean, giving you the freedom to enjoy your favorite news

Readow Readow RSS Reader application. It’s fast and clean, giving you the freedo

Pradeep Hr 7 Sep 20, 2022
Android application to sync RSS without a server using DecSync

Flym DecSync Flym DecSync is a fork of Flym which adds synchronization using DecSync. To start synchronizing, all you have to do is synchronize your s

Aldo Gunsing 20 Dec 30, 2022
Continuously archive RSS feeds to various different backends

RSStore Continuously archive RSS feeds to various different backends. Aka I try

//todo 0 Dec 18, 2021
📱:newspaper: Android client for the Nextcloud news/feed reader app

Nextcloud News Reader – Android App The Nextcloud News Reader Android App is under AGPLv3 License terms. Bugs and enhancements can be reported under:

Nextcloud 589 Dec 31, 2022
📱:newspaper: Android client for the Nextcloud news/feed reader app

Nextcloud News Reader – Android App The Nextcloud News Reader Android App is under AGPLv3 License terms. Bugs and enhancements can be reported under:

Nextcloud 591 Jan 8, 2023
Anxiety free news reader for Android - developed using Kotlin

Android River is a modern Android 2.2 news app. It's now version 1.15. Android River has the following features: Read RSS 1.0, RSS 2.0 and ATOM 1.0. C

Dody Gunawinata 319 Nov 10, 2022
Free and open source manga reader for Android.

Build Stable Weekly Preview Contribute Support Server Tachiyomi Tachiyomi is a free and open source manga reader for Android 5.0 and above. Features F

Tachiyomi 20.4k Jan 9, 2023
Android News Reader app. Kotlin Coroutines, Retrofit and Realm

News Reader Android News Reader app Code that follows Packt Publishing Kotlin in Practice Video Course Example of Kotlin Coroutine usage, with Realm a

Marko Devcic 22 Oct 3, 2022
Tachiyomi 20.4k Jan 9, 2023
Web novel reader

NovelDokusha Android web novel reader Features: Two databases to search for web novels (by title or categories) Multiple sources from where to read Re

nani 60 Dec 23, 2022
A manga reader app that can be used save / search / find and read latest manga / manhwa

A manga reader app that can be used save / search / find and read latest manga / manhwa

Sebin P Johnson 3 Nov 20, 2021
HackerNews reader app for Wear OS

HNReader Install by importing to Android Studio, building the apk, and Google the official Android documentation for loading the apps to Wear OS and f

Hikmat Jafarli 2 Sep 4, 2022
Not so deep text reader inspired by BORIS, written in Kotlin

Barnable Reader Prototype Deep text reader library that generates a semantic model from a short input text. At the moment it is very primitive and is

David Jones 0 Dec 28, 2021
A Free, Open source unofficial manga reader for MangaDex

Neko A Free, Open source unofficial manga reader for MangaDex About: This is a MangaDex specific fork of Tachiyomi and TachiyomiJ2K. This contains fea

Carlos 1.4k Jan 3, 2023
CoolReader 3 - cross platform open source e-book reader

CoolReader 3 - cross platform open source e-book reader (c) Vadim Lopatin, 1998-2018 Development is moved to GitHub https://github.com/buggins/coo

Vadim Lopatin 302 Jan 4, 2023
android-delicious Delicious Android is an Android app which helps you access and save bookmarks via Delicious. It's available over at Google Play.

Delicious Android Delicious Android is an Android app which helps you access and save bookmarks via Delicious. It's available over at Google Play. Fea

Alexander Blom 137 Nov 20, 2022