GithubHelp home page GithubHelp logo

hniosreader's Introduction

Hacker News Client Version 2.0

This app is now available on Appstore at https://itunes.apple.com/us/app/hacker-news-client/id939454231?mt=8&uo=4.

This is probably the first iOS Hacker News client that uses the newly introduced official Firebase Hacker News API. One of the cool features of the new API are updates pushed in real time. The app refreshes the number of points and the number of comments for each story automatically. If you want to reload the stories completely, simply pull to refresh. Reloading stories does not happen automatically, since it could be annoying if the order of stories changed while the user is browsing them.

What also distinguishes this app is its fresh look and feel. It feels like a proper iOS 8 app. It makes use of iOS 8 self-sizing tableview cells. You can adjust the comments' font size by going to iOS's Settings -> General -> Accessibility -> Larger Text and dragging the slider.

Hacker News Client is completely open source. Feel free to contribute.

Don't forget to install pods once you clone the code.

Contributing

Your ideas for improving this app are greatly appreciated. The best way to contribute is by submitting a pull request. I'll do my best to respond to you as soon as possible. You can also submit a new Github issue if you find bugs or have questions.

To-do list as of 15 March 2015:

  1. An app extension in the Today view (Today widget). https://developer.apple.com/library/ios/documentation/General/Conceptual/ExtensibilityPG/NotificationCenter.html#//apple_ref/doc/uid/TP40014214-CH11-SW1
  2. Extending user profile with user's stories, polls and comments.

License

The MIT License (MIT)

Copyright (c) 2014 Marcin Kmiec

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

hniosreader's People

Contributors

bonzoq avatar drosadoyew avatar jdevlieghere avatar jeffreyjackson avatar michelmansour avatar pmkowal avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

hniosreader's Issues

Build the project

Hi, I'm trying to build your project as I want to add some features to this awesome project but when I try to build it I have an error. I have installed Cocoa Pods but it's my first use of it. I setted it up, updated and run the command: pod install into the project home, no errors. In Xcode I have this:
schermata 2014-12-22 alle 15 57 06

do you know where the problem can be? it's the first time I'm using pods

Slow start

Hi, I don't know if is the app or my old iPhone 4s, but the application is slow in the beginning:
I open the app, I view the first stories, but I can't open or scroll for 45-60 seconds, it seems frozen, then all works well.

Battery Consumption

Brilliant app, loved it until I noticed the amount of battery drain it is causing on my iPhone 5S iOS 8.1.1... Just leaving the iPhone lying on the table while having the app open in the background, and being in an article view killed 26% of my battery in about 3h...

On the battery usage page it says Low Signal under the app name, so I guess there's a hint. Please improve this if you can, I'd love to use an OS hnclient :)

Share comments

Hi @bonzoq, as mentioned before (sorry for the delay), i think it would be quite useful to be able to share the URL for a Post's comments.
Just not sure where i'd put the share button. Perhaps next to the back button (either below or on the right side). On the other hand, when sharing a Post the button is on the bottom right. Thoughts?

Thanks

Improvement: change back button to X

Back button that brings you back from the browser to the app itself is often confused with browser back button. So instead of browsing back I often close the browser completely. Could you please change it to X to emphasize that it closes browser?

Copy the thread URL - feature request

One thing that I often wish I could do on posts like an Ask HN is to copy the
thread URL or choose to have it open in safari (possibly by long-pressing the
thread). This would be really helpful for non-link posts that I would like to
view later.

Share from home screen

Almost every day i scroll through the list of Posts on the home screen just to find the ones i would like to read later (add to pocket).
Currently, you need to tap on the item and wait for the Post to load before you're able to share it. Even though PR #14 removes the need to wait for the Post to load, i think it would be useful to have a shortcut right from each item on the home screen.
As in issue #16, i'm not sure where i'd add the button. I see two main options:
1) Add a button to the cell view
Pros:

  • Requires one tap only
  • It's right there

Cons:

  • Adds clutter

2) Add a swipe gesture
Pros:

  • Keeps the current white space on the cell
  • You'll have an easy place to put other shortcuts

Cons:

  • Requires one more gesture than 1)
  • Hard to know it's there

@bonzoq do you have any thoughts on this? Thanks

Feature request: "best" stories

First of all thank you for this wonderful hacker news client. I use it daily and enjoy it's elegance.

It would be great to have support for "best" stories, which can be accessed via https://news.ycombinator.com/best . Those stories have the highest points in the last 3 days. So it's a good place to find high quality stories.

Slow scrolling performance

From the code, it looks like the UITableView implementation isn't properly doing the prototype-row caching method; row heights are being calculated during scrolls causing jitteriness and other gnarly performance issues.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.