Skip to content

starhunt/rn-omc-boilerplate

Repository files navigation

Gifticon Alarm (챙겨콘)

A React Native mobile app for managing gifticons with expiry date reminders.

Features

  • OCR Recognition: Automatically extract expiry dates from gifticon images using ML Kit
  • Push Notifications: Receive reminders before your gifticons expire
  • Local Storage: All data stored locally using SQLite
  • Cross-Platform: Works on both iOS and Android

Tech Stack

  • Framework: React Native with Expo SDK 53
  • Routing: Expo Router (file-based routing)
  • Database: expo-sqlite
  • OCR: @react-native-ml-kit/text-recognition
  • Notifications: expo-notifications
  • State Management: Zustand
  • Error Tracking: Sentry
  • Ads: Google AdMob

Architecture

This project follows Feature Sliced Design (FSD) architecture:

src/
├── entities/      # Business entities (read operations)
├── features/      # Business logic (CUD operations)
├── widgets/       # Composed UI blocks
└── shared/        # Shared utilities, hooks, services

Getting Started

Prerequisites

  • Node.js 18+
  • npm or pnpm
  • Expo CLI
  • iOS Simulator (Mac) or Android Emulator

Installation

  1. Clone the repository

    git clone https://github.com/boaz-hwang/app-sample-repo.git
    cd app-sample-repo
  2. Install dependencies

    npm install
  3. Set up environment variables

    cp .env.example .env.local
    # Edit .env.local with your values
  4. Start the development server

    npx expo start

Environment Variables

Variable Description
EXPO_PUBLIC_SENTRY_DSN Sentry Data Source Name for error tracking
SENTRY_AUTH_TOKEN Sentry auth token for source maps
SENTRY_ORG Sentry organization name
SENTRY_PROJECT Sentry project name

Building

Development Build

eas build --profile development --platform ios
eas build --profile development --platform android

Production Build

eas build --profile production --platform all

Project Structure

├── app/                 # Expo Router pages
│   ├── (tabs)/          # Tab navigation screens
│   └── _layout.tsx      # Root layout
├── src/
│   ├── entities/        # Domain entities
│   ├── features/        # Feature modules
│   ├── widgets/         # UI widgets
│   └── shared/          # Shared code
│       ├── db/          # Database utilities
│       ├── hooks/       # Custom hooks
│       ├── services/    # Services (OCR, notifications)
│       └── ui/          # UI components
├── assets/              # Static assets
└── app.json             # Expo configuration

License

MIT

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors