Skip to content
This repository has been archived by the owner on May 18, 2022. It is now read-only.

Commit

Permalink
Update README.md file.
Browse files Browse the repository at this point in the history
  • Loading branch information
smhn24 committed Dec 11, 2021
1 parent 9e5b3b5 commit dab8c28
Show file tree
Hide file tree
Showing 10 changed files with 51 additions and 4 deletions.
55 changes: 51 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,25 +1,26 @@
# TODO application

**TODO** apllication for **CS50** final project.
**TODO** apllication for **CS50** final project with flutter framework.

#### Video Demo: https://youtu.be/91qB2TgGXTc

#### Description:
This is my Final project for ***CS50*** course. This is a **TODO** list application for **Mobile**(Android and iOS), **Desktop**(Windows, Linux and MacOS) and **Web** with **Flutter** framework.

You may ask me **What is a TODo list?** The answer is simple: To Do list is a list of tasks you want to complete, or tasks you want to do.
You may ask me **What is a TODo list?** The answer is simple: To Do list is a list of tasks you want to complete, or tasks you want to do and this application helps you to manage your tasks.

About **Flutter** (From documentation):
- Flutter is an open source framework by Google for building beautiful, natively compiled, multi-platform applications from a single codebase.
- Flutter is an open source framework by **Google** for building beautiful, natively compiled, multi-platform applications from a single codebase.
- Flutter code compiles to ARM or Intel machine code as well as JavaScript, for fast performance on any device.
- Flutter is powered by Dart, a language optimized for fast apps on any platform
- ...

In this application to save TODOs in mobile storage I used Hive database and as you know Hive is a Fast, Enjoyable & Secure NoSQL Database.
In this application to save TODO objects in device storage I used Hive database and as you know Hive is a Fast, Enjoyable and Secure NoSQL Database.

About **Hive** (From documentation):
- Hive is a lightweight and blazing fast key-value database written in pure Dart. Inspired by Bitcask.
- All data stored in Hive is organized in **boxes**. A box can be compared to a table in SQL, but it does not have a structure and can contain anything.
- Cross platform: mobile, desktop, browser.
- ...

To save TODOs with Hive, I make my TODO model like this:
Expand All @@ -45,3 +46,49 @@ class TODO extends HiveObject {
TODO({required this.id, required this.name, required this.time});
}
```
I actually used material design for building ui/ux. Another beautiful feature in my project is dark mode supporting, application detects theme mode of the device then apply the correct(light or dark) theme.
For dark mode I added this to the MaterialApp:
```dart
darkTheme: ThemeData(
brightness: Brightness.dark,
),
```

### This is my app logo:
![Image](./assets/icon/icon.png)

## Here is a preview of my application in Mobile:

#### This is the empty main page:
![Image](./ScreenShots/android1.jpg)

#### When you want to create a new TODO you should fill in these fields.
![Image](./ScreenShots/android2.jpg)

#### When you want to choose a date for the TODO you should select your date from this page.
![Image](./ScreenShots/android3.jpg)


#### If you want to delete a TODO after click on delete icon, youo chould press the delete text to confirm deleting TODO.
![Image](./ScreenShots/android4.jpg)

## Here is a preview of my application in Desktop(Windows):

#### This is the main page with some TODOs
![Image](./ScreenShots/windows1.png)

#### This is date picker for adding a new TODO
![Image](./ScreenShots/windows2.png)

#### This is the warning message to confirm deleting the TODO
![Image](./ScreenShots/windows3.png)

## At last its turn to take a look at a preview of my application in Web or PWA app (in dark mode):

#### This is a dark view from main page and adding TODO
![Image](./ScreenShots/webpwa1.png)

#### This is a dark view from confirm deleting warning.
![Image](./ScreenShots/webpwa2.png)

#### This was my ptoject for CS50 course.
Binary file modified ScreenShots/android1.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified ScreenShots/android2.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified ScreenShots/android3.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified ScreenShots/android4.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified ScreenShots/webpwa1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified ScreenShots/webpwa2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified ScreenShots/windows1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified ScreenShots/windows2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified ScreenShots/windows3.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit dab8c28

Please sign in to comment.