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

https://github.com/pclubiitk/iitk-mail-client

Developing a Mail Client for the IITK Campus Community that would be available across various platforms including Android, iOS, Windows, Web, Linux and Mac
https://github.com/pclubiitk/iitk-mail-client

app-development hacktoberfest

Last synced: 9 months ago
JSON representation

Developing a Mail Client for the IITK Campus Community that would be available across various platforms including Android, iOS, Windows, Web, Linux and Mac

Awesome Lists containing this project

README

          

# Logo IITK MAIL CLIENT

Welcome to our Project which we have built a mail client service which allows you to send mail through SMTP service and receive them through IMAP service using enough_mail api. and we have done this in flutter and backend is written in dart.
## Why Flutter?
Flutter is an open-source UI software development kit created by Google. It is used to build applications for mobile, web, and desktop from a single codebase. Flutter apps are written in Dart, a language optimized for fast apps on any platform.

Reasons for using flutter

* Flutter allows the creation of apps for Android, iOS, Web, Linux, macOS and Windows from a single codebase.
* It allows the developers to see the result of code change almost instantly without restarting the app.
* Google provides extensive and detailed documentation, tutorials, and sample projects, making it easier for developers to learn and master Flutter.
* Excellent support in popular IDEs like Android Studio, and Visual Studio Code, with tools for debugging, profiling, and more.
*
## Why Dart?
Dart is a programming language developed by Google. It was designed with the goal of being easy to learn, fast in execution, and capable of creating high-performance applications for a variety of platforms.

Reasons for using dart

* Compilation and hot reload: Dart supports to being compiled both AOT(ahead of time) and JIT(just in time) . Dart's JIT compilation enables Flutter's famous Hot Reload feature.
* Platform Support: Dart supports compilation to native machine code, which is essential for mobile development. It also compiles to JavaScript for web applications, making it versatile -
across different platforms.
* Dart provides robust support for asynchronous programming.

## Features
There are three major features we have implemented up till now-

1. Authentication- Securely authenticate users using enough_mail package to provide secure and robust authentication for users
2. Sending Mails- Compose and send emails, including the ability to add recipients.
3. Fetching Mails- Retrieve and display emails from the server, allowing users to view their inbox and read individual messages.

## Installation

### 1. Clone the repository
git clone
### 2. Resolving dependencies
flutter pub get
### 3. Choose and run the emulator of your choice
You can check the available emulators and devices by pressing `ctrl`+`shift`+`P` on windows and `cmd`+`shift`+`P` on mac and then select your device.
To run on your own Phone you will first need to enable developers options and USB Debugging then
connect your phone with USB cable. You will be able to see your phone in the list of available devices as well as you press the above commands.
### 4. Running the Application
Press `fn`+`f5` to run or execute `flutter run` on terminal

### Note: Please refer to video for complete demonstration

[Demo_Video](https://youtu.be/vo4wqaGKJCE)