An open API service indexing awesome lists of open source software.

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.

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


App preview

---

## ๐Ÿ“„ License

This project is licensed under the MIT License.

---

๐Ÿš€ Made with โค๏ธ by [Priscila Oliveira](https://github.com/pripoliveira50/)