#Конечно! Вот полный текст README, готовый к вставке в файл:
# Expense Tracker
A React Native mobile application for tracking personal expenses.
## Prerequisites
- Node.js (v14 or newer)
- npm or yarn
- Xcode (for iOS development)
- Android Studio (for Android development)
- Expo CLI
## Installation
1. Install dependencies:
```bash
npm install
# or
yarn install- Create a
.envfile in the root directory with your Firebase configuration. You can use the.env.examplefile as a template:
EXPO_PUBLIC_FIREBASE_API_KEY=your_api_key
EXPO_PUBLIC_FIREBASE_AUTH_DOMAIN=your_auth_domain
EXPO_PUBLIC_FIREBASE_PROJECT_ID=your_project_id
EXPO_PUBLIC_FIREBASE_STORAGE_BUCKET=your_storage_bucket
EXPO_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=your_messaging_sender_id
EXPO_PUBLIC_FIREBASE_APP_ID=your_app_id
-
Make sure you have created Firestore indexes for the following queries to work properly:
- Collection
expenseswith indexes onuserId (Ascending),date (Descending), and__name__ (Descending) - Collection
expenseswith indexes oncategory (Ascending),userId (Ascending),date (Descending), and__name__ (Descending)
- Collection
npm run ios
# or
yarn iosnpm run android
# or
yarn androidnpm start
# or
yarn start- For iOS devices, make sure your Apple developer certificates and provisioning profiles are properly configured in Xcode.
- For Android devices, enable USB debugging and connect the device via USB or use wireless debugging.
src/
├── components/ # Reusable components
├── navigation/ # Navigation configuration
├── screens/ # Screen components
├── services/ # API and service functions
├── store/ # State management
├── types/ # TypeScript type definitions
└── utils/ # Utility functions
- User authentication
- Expense tracking
- Category management
- Expense history
- Profile management
- React Native with Expo
- TypeScript for type safety
- Firebase Authentication and Firestore
- React Navigation for routing
- React Native Paper for UI components
- Zustand for state management
- Date-fns for date formatting
- Limited offline support
- No data export functionality
- No multi-language support
- Add data visualization (charts, graphs)
- Implement budget planning
- Add recurring expenses
- Support for more currencies
- Offline mode with data sync
- Export data to CSV/PDF
- Dark mode support