Skip to content

BamboTims/pocket-app

Repository files navigation

React Native Pocket Clone with Clerk, RevenueCat & Sentry

This is a React Native Pocket Clone app that lets users save, organize, and read articles with a beautiful interface and smooth animations.

✨ Key Features

  • Save Articles: Add articles from URLs with automatic content parsing
  • Reading Experience: Clean article reader with HTML content rendering
  • User Authentication: Secure login with Clerk
  • Offline Storage: SQLite database with Drizzle ORM
  • RSS Feed Integration: Stay updated with curated news feeds
  • Favorites & Organization: Mark articles as favorites and organize your reading list

🛠 Tech Stack

🚀 Getting Started

Prerequisites

Make sure you have the Expo CLI installed.

For the best development experience, install:

Installation

  1. Clone the repository

    git clone <repository-url>
    cd pocket-app
  2. Install dependencies

    npm install
  3. Prebuild the native code

    npx expo prebuild
  4. Run the app

    # iOS
    npx expo run:ios
    
    # Android
    npx expo run:android
    
    # Web
    npx expo start --web

Environment Variables

Create a .env file in the root directory:

EXPO_PUBLIC_CLERK_PUBLISHABLE_KEY=pk_test_your_clerk_key_here
EXPO_PUBLIC_REVENUECAT_API_KEY=your_revenuecat_api_key_here

Replace the placeholders with your actual API keys from:

Database Setup

The app uses SQLite with Drizzle ORM. The database is automatically initialized on first run with the following tables:

  • users - User profiles and authentication data
  • saved_items - Saved articles with metadata and content
  • rss_articles - RSS feed articles for the news section

Sentry Setup

  1. Create a project on Sentry

  2. Run the setup wizard:

    npx @sentry/wizard@latest -s -i reactNative

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors