Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/baguilar6174/flutter-chat-app
Repositorio para almacenar el código fuente de una aplicación de chat con Flutter
https://github.com/baguilar6174/flutter-chat-app
dart flutter provider-state-management socket-io
Last synced: 19 days ago
JSON representation
Repositorio para almacenar el código fuente de una aplicación de chat con Flutter
- Host: GitHub
- URL: https://github.com/baguilar6174/flutter-chat-app
- Owner: baguilar6174
- Created: 2021-06-18T02:56:26.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2024-11-17T21:50:47.000Z (about 2 months ago)
- Last Synced: 2024-11-17T22:27:36.180Z (about 2 months ago)
- Topics: dart, flutter, provider-state-management, socket-io
- Language: Dart
- Homepage:
- Size: 1.05 MB
- Stars: 1
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Chat App
This mobile application features a chat implementation built with Flutter that uses sockets for direct communication with the server. It includes User Login and Registration, among other features.
## How to Use
Step 1:
Have the Flutter SDK installed. This project was created with Flutter version `2.2.2` and Dart `2.13.3`.
Step 2:
Clone the project repository using the following command:
```
git clone https://github.com/baguilar6174/flutter-chat-app.git
```Step 3:
In the project's root directory, run the following command in the terminal to get the necessary dependencies:
```
flutter pub get
```## What I Learned
- Designing login and registration screens with optimizations and reusable code
- CustomInputFields
- Navigation between screens
- Pull to refresh in a list
- Message bubbles
- Message animations
- Consuming REST services
- Login and registration from Flutter
- Storing JWT Keychain / KeyStore
- Maintaining the user's session if authenticated
- Connecting sockets after login
- Sending and receiving messages
- Message storage## Features
- Login page (UI only)
- User registration page (UI only)
- Chat room page (UI only)
- Chat page (sending messages with animations)
- Preload page
- Logout## Libraries & Packages Used
* `pull_to_refresh: ^2.0.0`: reloads the page with a gesture
* `provider: ^5.0.0`: state management for the application
* `dio: ^4.0.0`: library for making HTTP requests
* `flutter_secure_storage: ^4.2.0`: library for secure storage on the device
* `socket_io_client: ^1.0.1`: client for socket communication
## Band Names App
Login Page
Register Page
Users Page
Chat Page
Login Validate
Logout
Chat test
Chat test
# Stay in touch
- Website - [www.bryan-aguilar.com](https://www.bryan-aguilar.com/)
- Medium - [baguilar6174](https://baguilar6174.medium.com/)
- LinkedIn - [baguilar6174](https://www.linkedin.com/in/baguilar6174)