https://github.com/pripoliveira50/your-feeling-app
๐ง A lightweight mood tracker app with emoji-based feedback, built with React Native and smooth screen transitions.
https://github.com/pripoliveira50/your-feeling-app
axios emotions linear-gradient mobile-app mood-tracker mood-tracker-app react-native typescript
Last synced: 23 days ago
JSON representation
๐ง A lightweight mood tracker app with emoji-based feedback, built with React Native and smooth screen transitions.
- Host: GitHub
- URL: https://github.com/pripoliveira50/your-feeling-app
- Owner: pripoliveira50
- License: mit
- Created: 2023-04-22T02:41:47.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2025-03-26T17:02:33.000Z (about 1 year ago)
- Last Synced: 2025-04-04T21:20:03.556Z (about 1 year ago)
- Topics: axios, emotions, linear-gradient, mobile-app, mood-tracker, mood-tracker-app, react-native, typescript
- Language: TypeScript
- Homepage:
- Size: 1.34 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ๐ญ Your Feeling App
A simple and expressive mood selection app built with React Native.
---
## ๐ About the Project
**Your Feeling App** is a mobile application developed with React Native that allows users to select their mood using emoticons. It features a clean UI with navigation between screens based on user interaction, including a modal for success feedback.
---
## ๐ Technologies Used
- **React Native 0.67.3**
- **React 17.0.2**
- **React Navigation (Native Stack)**
- **Axios**
- **React Native Linear Gradient**
- **React Native Splash Screen**
- **React Native Gesture Handler**
- **React Native Reanimated**
- **React Native Safe Area Context**
- **React Native Ratings**
- **TypeScript**
---
## ๐ง Architecture & Technical Decisions
- The project uses **React Navigation** (Native Stack) for lightweight and performant screen transitions.
- **Global state** is managed with hooks and component props due to the app's small scope.
- Styling is handled using **StyleSheet** and **Linear Gradient** for visually appealing transitions and screens.
- A **modular folder structure** ensures separation of concerns between components, screens, services, and global styles.
- All API interactions are centralized in a single Axios instance under `services/api.ts`.
- UI feedback is delivered via a custom **success modal**, enhancing UX after key actions.
- **Splash screen and icon configuration** are manually implemented in Android and iOS native folders.
- The project uses **TypeScript** for type safety and better developer experience.
---
## ๐ฆ Requirements
- Node.js and Yarn installed
- Android Studio and/or Xcode configured for React Native
---
## ๐งฐ Getting Started
### 1๏ธโฃ Clone the repository
```bash
git clone https://github.com/your-username/your-feeling-app.git
cd your-feeling-app
```
### 2๏ธโฃ Install dependencies
```bash
yarn
```
### 3๏ธโฃ Install iOS dependencies (macOS only)
```bash
cd ios && pod install && cd ..
```
### 4๏ธโฃ Run the app
```bash
yarn android # for Android
yarn ios # for iOS (macOS only)
```
---
## ๐ Folder Structure
```
your-feeling-app/
โโโ __tests__/ # Unit tests
โโโ .github/assets/ # App preview for README
โโโ android/ # Android native project
โโโ ios/ # iOS native project
โโโ src/ # Application source code
โ โโโ @types/ # Type declarations
โ โโโ components/ # Reusable UI components
โ โโโ global/ # Theme colors and metrics
โ โโโ routes/ # App navigation
โ โโโ screens/ # Screens (Home, Welcome, Rate Feelings)
โ โโโ services/ # API layer (Axios)
โ โโโ App.tsx # App entry point
โโโ index.js
โโโ tsconfig.json
โโโ babel.config.js
โโโ README.md
```
---
## ๐งช Testing
To run tests:
```bash
yarn test
```
---
## ๐ผ Interface Preview
---
## ๐ License
This project is licensed under the MIT License.
---
๐ Made with โค๏ธ by [Priscila Oliveira](https://github.com/pripoliveira50/)