Skip to content

eres45/testIOS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

6 Commits
Β 
Β 
Β 
Β 

Repository files navigation

SingleScreenApp

πŸ“± Overview

SingleScreenApp is a modern iOS application built with SwiftUI that demonstrates professional mobile development practices. The app provides a simple yet elegant user interface for creating and fetching user data through REST API integration.

App Screenshot Placeholder

✨ Features

  • User Creation: Create new users with name and email validation
  • User Fetching: Retrieve user profiles from the API
  • Premium UI/UX:
    • Neumorphic design with subtle shadows and rounded corners
    • Real-time form validation with feedback
    • Toast notifications for success/error states
    • Haptic feedback on interactions
    • Smooth animations and transitions
  • Robust Error Handling: Comprehensive error states and user feedback
  • Dark Mode Support: Full support for iOS light/dark appearances
  • Responsive Design: Adapts to different iPhone sizes

πŸ› οΈ Technologies Used

  • Swift 5: Latest language features including async/await
  • SwiftUI: Modern declarative UI framework
  • Combine: Reactive programming for state management
  • MVVM Architecture: Clean separation of concerns
  • Unit Testing: XCTest framework for reliability

πŸ“‹ Requirements

  • iOS 15.0+
  • Xcode 14.0+
  • Swift 5.5+

πŸš€ Getting Started

Installation

  1. Clone this repository
git clone https://github.com/eres45/testIOS.git
  1. Open the project in Xcode
cd testIOS
open SingleScreenApp.xcodeproj
  1. Build and run the app (⌘+R)

πŸ“ Project Structure

SingleScreenApp/
β”œβ”€β”€ Views/              # UI components and screens
β”œβ”€β”€ ViewModels/         # Business logic and state management
β”œβ”€β”€ Models/             # Data structures
β”œβ”€β”€ Services/           # API and data services
β”œβ”€β”€ Utilities/          # Helper extensions and components
└── Tests/              # Unit and UI tests

πŸ—οΈ Architecture

This app implements the MVVM (Model-View-ViewModel) architecture:

  • Models: Data structures that match API responses
  • Views: SwiftUI views responsible only for UI presentation
  • ViewModels: Business logic, state management, and data processing
  • Services: API interaction and data handling

🌐 API Integration

The app integrates with the ReqRes API for demonstration purposes:

  • POST /api/users - Create user
  • GET /api/users/{id} - Fetch user by ID

πŸ§ͺ Testing

Run the tests in Xcode:

  1. Select Product > Test (⌘+U)
  2. View test results in the Test Navigator

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.


Made with ❀️ by a passionate iOS developer ERES

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages