A modern, cross-platform Hacker News client built with React Native and Expo. Browse stories, comments, jobs, and more from Hacker News with a beautiful, native mobile experience.
Help improve the app by joining hnflow-testers@googlegroups.com and beta testing program.
After joining, you can download the app from Google Play.
- Advanced Search: Search through Hacker News stories and comments with real-time filtering
- Cross-Platform: Works on iOS, Android, and Web
- Modern UI: Beautiful dark-themed interface built with NativeWind (Tailwind CSS)
- Content Types: Browse Front Page, Stories, Comments, Ask HN, Show HN, Launch HN, Jobs, and Polls
- Threaded Comments: View nested comment threads with collapsible comments
- Sorting Options: Sort by popularity or date
- Pagination: Navigate through multiple pages of results
- Fast & Responsive: Optimized for performance with efficient data fetching
- Framework: Expo ~54.0.30
- React Native: 0.81.5
- React: 19.1.0
- Routing: Expo Router (file-based routing)
- Styling: NativeWind v4 (Tailwind CSS for React Native)
- UI Components:
- @gorhom/bottom-sheet for modal interactions
- @expo/vector-icons for icons
- HTML Rendering: react-native-render-html
- API: Hacker News Algolia API
- Node.js (v18 or higher recommended)
- npm or yarn
- Expo CLI (installed globally or via npx)
- For iOS development: Xcode (macOS only)
- For Android development: Android Studio
-
Clone the repository:
git clone https://github.com/srijxnnn/hnflow.git cd hnflow -
Install dependencies:
npm install
-
Start the development server:
npm start # or npx expo start
Start the Expo development server:
npm startThen choose your platform:
- Press
ito open iOS simulator - Press
ato open Android emulator - Press
wto open in web browser - Scan the QR code with Expo Go app on your device
# iOS
npm run ios
# Android
npm run android
# Web
npm run webThe app uses the Hacker News Algolia API to provide powerful search capabilities:
- Query Search: Real-time search with 250ms debounce
- Tag Filtering: Filter by content type (Front Page, Stories, Comments, Jobs, etc.)
- Sorting: Sort results by popularity or date
- Pagination: Navigate through search result pages
- Nested comment threads with visual indentation
- Collapsible comments to hide/show thread branches
- Maximum depth of 3 levels before showing "Continue thread" link
- Support for HTML content in comments
- View full story content with metadata (points, author, time)
- Open external links in browser
- View all comments for a story
- Support for different item types (stories, jobs, polls)
The app uses the Hacker News Algolia API:
- Search Endpoint:
http://hn.algolia.com/api/v1/search(popularity) orsearch_by_date(date) - Item Endpoint:
http://hn.algolia.com/api/v1/items/{id}
See api/hn.ts for implementation details.
npm run lintThe project uses TypeScript for type safety. Type definitions are in types/api.d.ts.
The app uses NativeWind (Tailwind CSS) for styling. Configure Tailwind in tailwind.config.js.
The app uses Albert Sans font family. Fonts are located in assets/fonts/.
The project includes eas.json for building with Expo Application Services:
# Install EAS CLI
npm install -g eas-cli
# Configure EAS
eas build:configure
# Build for iOS
eas build --platform ios
# Build for Android
eas build --platform androidContributions are welcome! Please feel free to submit a Pull Request.
See Privacy Policy of HNFlow.
See LICENSE.md
- Hacker News for the content
- Algolia for the Hacker News Search API
- Expo for the amazing development platform



