diff --git a/.gitignore b/.gitignore index ae1f183..b4a256a 100644 --- a/.gitignore +++ b/.gitignore @@ -18,7 +18,7 @@ # The .vscode folder contains launch configuration and tasks you configure in # VS Code which you may wish to be included in version control, so this line # is commented out by default. -#.vscode/ +.vscode/ # Flutter/Dart/Pub related **/doc/api/ diff --git a/README.md b/README.md index e9e01d2..6c862ae 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,52 @@ # Save The Date -Add events to your calendar from screenshots! +[![YouTube Demo](demo_images/badge-youtube.svg)](https://www.youtube.com/watch?v=pDBKZgbR0xk) [![Devpost](demo_images/badge-devpost.svg)](hhttps://devpost.com/software/save-the-date-dql1fr) -Icons are from [Icons8](https://icons8.com/). +Add events to your calendar just by taking screenshots! Created by [Nick Wu](https://nickwu241.github.io) and Vivian Lam. + +**Problem**: When I see a cool event on Instagram/online, it takes a lot of effort to add it into my calendar as a reminder. :( + +**Solution**: It's smoother to just take a screenshot and have the event added to your calendar, and that's what we did! ^_^ + +**How does it work?** + +1. User sees an event / message on phone or poster +2. Take a screenshot or photo +3. Share that photo with our app Save The Date +4. Event gets added to your calendar! + +![Thumbnail](demo_images/mockups.png) + +## Developing + +Application code lives in `lib` where `main.dart` is the entry point. + +[Install Flutter](https://flutter.dev/docs/get-started/install) if you haven't and you should be able to run our app after! + +```bash +flutter run +``` + +### Directory Structure + +```bash +. +├── android # Android specific configurations +├── assets # Static assets (icons, images) +├── ios # iOS specific configurations +├── lib # Application code +│ ├── add_to_calendar.dart # Logic for creating calendar events +│ ├── handle_share_intent.dart # Logic for handling share intents of images from the OS +│ ├── main.dart # Entry point to start the app +│ ├── models.dart # Data models +│ ├── parse_image_file.dart # Logic for parsing out a CalendarEvent from an image +│ ├── parse_text.dart # Helper used in parse_image_file.dart +│ └── widgets # Screens and Reusable Widgets +│ ├── onboarding_widget.dart +│ └── text_detector_painter.dart +└── test # Testing code +``` + +## Icon Credits + +The 3 icons from the onboarding screen are from [Icons8](https://icons8.com/). diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index 77a144a..1071b2b 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -7,7 +7,7 @@ FlutterApplication and put your custom class here. --> DevpostDevpostView SubmissionView Submission \ No newline at end of file diff --git a/demo_images/badge-youtube.svg b/demo_images/badge-youtube.svg new file mode 100644 index 0000000..55ad269 --- /dev/null +++ b/demo_images/badge-youtube.svg @@ -0,0 +1 @@ + YouTubeYouTubeWatch DemoWatch Demo \ No newline at end of file diff --git a/demo_images/mockups.png b/demo_images/mockups.png new file mode 100644 index 0000000..cf7aa17 Binary files /dev/null and b/demo_images/mockups.png differ diff --git a/demo_images/onboard1.png b/demo_images/onboard1.png new file mode 100644 index 0000000..8419d93 Binary files /dev/null and b/demo_images/onboard1.png differ diff --git a/demo_images/onboard2.png b/demo_images/onboard2.png new file mode 100644 index 0000000..95d4db6 Binary files /dev/null and b/demo_images/onboard2.png differ diff --git a/demo_images/onboard3.png b/demo_images/onboard3.png new file mode 100644 index 0000000..219f7ec Binary files /dev/null and b/demo_images/onboard3.png differ diff --git a/demo_images/screenshots.png b/demo_images/screenshots.png new file mode 100644 index 0000000..8ecf958 Binary files /dev/null and b/demo_images/screenshots.png differ diff --git a/demo_images/thumbnail.png b/demo_images/thumbnail.png new file mode 100644 index 0000000..b239661 Binary files /dev/null and b/demo_images/thumbnail.png differ