このプロジェクトはショッピングシステムの簡素化された実装です。このプロジェクトは、ユーザーが製品を売買できるモバイルeコマースアプリケーションにあると予想される基本的な機能を提供することを目的としています。アプリをナビゲートするには、ユーザーは自分自身を認証する必要があります。ログインしたら、ユーザーは利用可能な製品のリストをスクロールし、カートに異なる製品を追加して注文することができます。ユーザーは、自分の製品をメインストアに追加、編集、削除することもできます。
このアプリには、バックエンド用のFireBase Auth REST APIを使用して実装されたシンプルな認証システムが含まれています。認証プロセスが成功した場合、一意のトークンがバックエンドから懸念されるユーザーに送信され、トークンはデバイスにローカルに保存され、1時間後に正確に期限切れになります。有効期限が切れると、トークンがデバイスから削除され、ユーザーが自動的にサインアウトされ、ログイン画面にプロンプトが表示されます。それ以外の場合、認証プロセスで何か問題が発生した場合、適切なエラーメッセージが画面に表示されます。
ユーザーがいくつかのデータを入力するたびに適切な資格情報を提供するために、このプロジェクトのすべてのフォームには、検証が必要になるたびに再利用されるいくつかの基本的な検証アルゴリズムが含まれています。
このプロジェクトのほとんどのデータ(製品、注文、ユーザー)は、FireBase RealTimeデータベースに保存されます。他のユーザー固有のデータ(Auth-Token、お気に入りの製品)は、Asyncstorageを使用してデバイスにローカルに保存されています。
このプロジェクトのすべてのナビゲーションは、React Navigation V5で構築されています。
アプリには、さまざまな画面にさまざまなタイプのアニメーションが含まれており、よりスムーズなユーザーエクスペリエンスを提供します。すべてのアニメーションはReactネイティブの蘇生ライブラリを使用して実装されます。つまり、異なるスタイルのプロパティをアニメーション化するために必要な計算の大部分はすべてネイティブ側のUIスレッドで行われます。ローエンドデバイスでも60fps。
このアプリで使用されるすべての設計資産(画面、コンポーネント、アイコンなど)は、このプロジェクトの所有者によって作成されます。
プロジェクトを実行するには、次のコマンドを順番に実行します。
プロジェクトをローカルにクローンします
$ git clone https://github.com/abdoutech19/shop-app.git
Root Directoryをプロジェクトに移動します
$ cd shop-app
すべての依存関係をインストールします
$ yarn install || npm install
プロジェクトをデバッグモードで実行します
$ npx react-native run-android
または、スムーズな体験のためにリリースモードでプロジェクトを実行する
$ npx react-native run-android --variant=release
注:このプロジェクトでは、Hermes JavaScriptエンジンを使用して、起動時間を改善し、メモリの使用量を減らし、アプリのサイズを削減します。これらの改善を有効にするためには、アプリはリリースモードで実行されている必要があります。そうでなければ、エルメスはデバッグモードでのパフォーマンスの向上に影響を与えません。実際、いくつかの開発者は、デバッグモードでエルメスエンジンが有効になっていることでより遅い結果に気付きました。
Androidデバイスでアプリをテストするには、ここから.apkファイルをダウンロードできます:ショッピング。
MITライセンスの下で配布されます。詳細については、ライセンスを参照してください。
[email protected]にメールしてください。