Giter Club home page Giter Club logo

my-horoskope's People

Contributors

bgoncharuck avatar littleoldjew avatar rimmer avatar

Stargazers

 avatar

Watchers

 avatar

my-horoskope's Issues

Remove SingleChildScrollView from app review item in menu

The problem right now that it does not sometimes fit onto the layout. But adding scroll view does not really solves the problem, we don't need a scroll view there, but we want this control to always fit.
Simplest solution: to move starts on the next line.

Змінити текст повідомлення помилки

Екран реєстрації

Наразі: коли після нажаття кнопки реєстрації поле з іменем залишається незаповненим, виводиться текст помилки: "Не все поля заполнены"

Потрібно: класифікувати помилку сказати що зробити: "Заплните поле "Имя""

Refine english app localization

Would be perfect to show it to the native speaker.

Acceptance

  • prepare screenshots with the app
  • show it to the native speaker
  • pay attention to the term "Ambience" that we are using

Bug: Crash with newly created user

Platform

Android

Repro steps

  1. Uninstall app or cleap all data
  2. Launch the app
  3. Fill up Login form
  4. Observe the crash (see screenshot)

Expected

No crash

Screehshot

Screenshot_1608152556

Crashlog

image

Design change #1 to Indicators card

Indicators

When clicked on Information icon, a popup with the following text appears

Показатели
- Ваши показатели (внутренняя сила, самочувствие и т. д.)
«Такова наполненность ваших внутренних ресурсов сегодня»

- Совет на сегодня (оцените ваш вчерашний день, чтобы получить совет на сегодня)
«Эти данные нужны, чтобы искусственный интеллект точнее воссоздал картину вашего самочувствия»

- Влияние планет
«Эта планета влияет на ваши внутренние ресурсы сегодня»

Prophecy List in Main

Propecy list

Story

As a user, I would like to get prediction for different dimensions of my life.

Brief

This is just a list with predictions.

Elements

See the color coding on the preview:
🟥 By clicking the triangle the user is navigated to a user profile page (TODO add a link to an issue here)
🟨 For now we need only the first icon, that indicates the horoscope sight of the user (you can download all of them in SVG from Figma)
🟦 Instead of the text on the mock we'd sometimes show text prophecies, that will correspond with the situation (user choice, date etc). For now we will show it randomly from the pre-defined list in resources.
Also, we can call those containers with text, value and progress bar cards.
🟢 Prediction values are floats from 0.1 to 9.9

Acceptance criteria

  1. After user sign up, they are navigated to the main screen (which must be created and will contain this prophecy list)
  2. Cards pick up values from the database (including the progress bars)
  3. The icon with the sight is corresponding with user birth date

Userpoll votes by himself

For now userpoll works perfectly, calculations are correct and no any date-related errors.
But, the next new issue comes along.

For some reason userpoll votes by himself. As if user clicked on button "prognos".
It occurs in the next day after being voted.

What expected: userpoll shows up, current day is not voted without user interaction
Problem: userpoll not shows up, because next day poll already voted on app start up

Files to check:
https://github.com/bgoncharuck/my_prophet/tree/userpoll-calendar-fixes/packages/blocs/user_poll/lib/bloc

At line 73 of this interface you can mark the debug point, and then check this.curUserPolls map for its insides. https://github.com/bgoncharuck/my_prophet/blob/userpoll-calendar-fixes/packages/data/abstract/polls_repository/lib/polls_repository.dart#L73

https://github.com/bgoncharuck/my_prophet/blob/userpoll-calendar-fixes/packages/data/platform/polls_repository_flutter/lib/src/polls_json.dart

Стан кнопки "Сохранить"

Екран "Настройки профиля"

Наразі: якщо бзер нічого не змінює в налаштуваннях, він бачить активну кнопку "Сохранить", а коли кліквє пт ній, нічого не відбувається.

Потрібно:
Або

  • при незмінюваних данних показувати кнопку "Сохранить" як неактивну і тоді юзер сам клікає "назад", щоб повернутись до налаштувань.
    Або
  • зберігати поточний стан при клікі юзером на кнопку "Чохранить" гавіть у випадку, якзо зміни не були внесені. Після кліку на "Сохранить" юзера переводить на екран налаштування профілю.

Який із варіантів дешевший, той давайте і реалізувати. Або якщо є інші ідеї, веллкам

Screenshot_20201217-205305

Відступи в повідомленні

Локація:
Екран реєстрації

Дія:
Виведення повідомленя про необхідність ознайомлення з користувацькою угодою.

Проблема:
Відсутність відступів з обох боків від повідомлення.

Потрібно: додатиScreenshot_20201226-222641.jpg відступи

Pure Dart Modules

  1. Redone blocs to pure dart, if possible.
  2. Make data module in pure dart too.

Design change #1 to Tip of the day card

Simple mode vote

Group 413

Extended mode vote

Group 415

A tip

Group 414

Hint text

«Эти данные нужны, чтобы искусственный интеллект точнее воссоздал картину вашего самочувствия»

Implement algorythm for calculating user's predictions

Minimal value: 20 points
Maximum value: 95 points
Avaible values: 95-20 = 75 points

Const birth part, by numerology and astrology: 20 points
Dynamic part, by chakras calulation and/or planet position: 20 points
Dynamic part, by user choises in questions: 35 points

User birth is a constant seed,
The value added to seeed, depending from day/month/year since approach, it need calculation,
The value added from user poll,

How to correctly store user choises?
Should we save only one month values, and clean any other?

UPD (12/08/20):
According to new algorithm, predictions indicators depend on users poll indicators in a following way:

Удача - Настроение
Внутренняя сила - Отношения
Самочувствие - Физическая активность
Амбиции - Продуктивность
Интеллект - Саморазвитие

Send event to the BLoC in the previous route

About route

Our app has a home screen and routes.
In the home screen we have a BLoC builder of AuthenticationBloc.

When user starts an app the authBloc has initial state of Uninitialized which shows a Loading screen.
If any user is logged in the user repository file, he will be loaded. And app will go to Authenticated state.
if no user logged or repository file is empty app will go to Unauthenticated state and shows a Registration screen.
When button "start" in the Registration screen is clicked and information is validated app goes to Authenticated state and logs user to the repository;

Normally in the Authenticated state app shows Daily screen.
But when we go to the menu we pushing a new instance to our route.
And our BLoC builder of AuthenticationBloc with Daily screen becomes a previous route.

From the menu we can return to our BLoC builder of AuthenticationBloc by navigation panel of the smartphone or push our Daily screen as a new route without BLoC builder, which is actually faster and recommended.
As well as push any other route that can be accessed from the menu screen.


Problem

In the Settings screen user can change settings of his profile.
And after it happens we need to send an event to AuthenticationBloc, especially if user changed his birth date.

But our AuthenticationBloc in the previous route.

Prophecy Entity

I'm adding new model and entity.

ChangeModel:

@JsonSerializable()
class ChangeModel {
  final String changeIconName;
  final String changeText;
  final double value;
}

ProphecyEntity:

@JsonSerializable()
class ProphecyEntity {
  ProphecyModel model;
  List<ChangeModel> changes;
}

Register screen

As a user I would like to have my prediction as precise as possible, so I would like to give the app as much data as required.

UI

Login/Register

Fields

  • Name - might be any string, we might limit it to 100 symbols
  • Birthdate - would be nice to have date/time picker for it. When picked data and time, autofill birthtime as well
  • Gender at birth - might be a picker/radio; this one will be improved by designer I hope; I suppose, must be a choice of three options (Male/Female/Other)
  • Country of bitrth - just a string, limited to 50 symbols. I dont think we should maintain a list of countries at this point.
  • Place of birth -a string, limited to 100 symbols. I dont think we should maintain a list of countries at this point.

Validation rules

  • Name and date of birth are mandatory. Others are not.
  • date of birth accepts date from the date/time picker, however might be entered manually (the format should be provided in a field hint and should follow locale rules)
  • Gender at birth should be a choice of three options
  • Country of bitrth string, limited to 50 symbols
  • Place of birth* a string, limited to 100 symbols.

Figma export

Please note, that you can use Figma Export tool to export any element you would need
Export

Please also note similar form will be used in User Settings page (TODO: add link to the corresponding issue).

App Bar creation

Description

App Bar appears on a screen together with poll after user fulfilled all needed personal data.
image

It consist:

  • burger menu (from the left side)
  • the title "Гороскоп на сегодня"
  • the arrow for drop-down menu

User Story

As a user, I would like to see my prediction for today, tomorrow or enter the Settings menu.

Use case

  1. User sees the App Bar "Гороскоп на сегодня". In connection to this option user poll with "Простой", "Расширенный" options displayed.
  2. User sets indicators, scenario implementing.

Alternative scenario 1

2a. User clicks on burger menu.
3a. Settings menu screen appears

image

4a. User clicks on any of option of a screen, new congruent scenario rolls out.

Alternative scenario 2

2b. User clicks the drop-down arrow
3b. "Гороскоп на завтра" option appears.
4b. User clicks "Гороскоп на завтра"
5b. Screen with prediction with a following note above appers: "Предсказания могут измениться после дальнейшего уточнения прогноза."
image

Alternative scenario 3

2c. User clicks the drop-down arrow
3c. User clicks on "Гороскоп на месяц"
4c. Notification appears: "Эта функция появится в ближайшее время, мы над этим усердно работаем!"

Integrate some of the Firebase Services

  • Google Analytics (it reports through Firebase, just another name)
  • Crashlytics: would be nice to also have all Flutter crashes reported to Crashlytics
  • Firebase In-App Messaging: preparation only
  • Firebase Cloud Messaging : sending messages from Firebase console

Please also add iOS app to Firebase Console as well
This might also require using mac, please contact @rimmer for the credentials for MacInCloud account

Bug of 42%

Location: Home screen
Preactions: no unusual activities
Conditions: Appears as soon as app is starting

photo_2021-03-11_15-24-17

Додати обмеження на введення року народження

Екран реєстрації:
Наразі: відсутні обмеження га введення числових значень року

Потрібно: встановити обмеження на найдавнішу дату, а також для дітей віком молодшим за 12 років
Найнижчий можливий показник для введення року - 1920
Найвищий - 2008

Implement In App Review API (dart in_app_review package)

Story

We'd like to let user add reviews without going to Google Play or App Store to increase number of positive reviews. This is now possible with In App Review API

A Dart package exists in order for that purpose.

Acceptance criteria

Instead of opening Google Play/App Store in attempt to add rating, open Rate dialog.

Змінити тип вводу для полів реєстрації

Платформа

Android

Опис

Потрібно щоб метод вводу пропонував писати слова з великої літери.
Наприклад, ім'я або країну.

Відтворення

  1. Запустити вперше або перейти на екран "Настройки профиля"
  2. Спробувати ввести щось в поля
  3. Метод вводу пропонує слова з маленької літери

Очікуваний результат

Метод вводу пропонує писати слова з великої літери.

Збільшити шрифт для меню

Шрифт меню маленький, по елементах важно попасти. Малелька відстань між елементами.
У нас багато вільного місця, тому ми можемо дозволити збільшити шрифт а також інтервал.

Пропоную збільшити шрифт на 2-4 пункти, а також збільшити інтервал між елементами.

UserPoll BLoC description

Not An Issue
UserPollBloc

UnvotedPollChange event is when user choose between circles in any poll and it is saved.
UnvotedPollSimple / Complex is when user switch between simple and extended widget

Деякі елементи важко натискати

Платфома: Android

При натисканні на наступні контроли треба дуже точно попасти по контролу, інакше він не зпрацьовує:

  1. Меню
  2. Голосування
  3. Календар

Бажаний результат:
Натискати легко з першого разу.

Ambiance

По нажатию на кнопку "Добавить окружение" пояляется окно с полями для ввода имени, роли, даты рождения и пола:

image

Если нажать на "Добавить" не заполним поля, то пользователь увидит сообщение:

image

после запонения пользователь нажимает на кнопку "Добавить"

image

и получает следущее:

image

Всегда отображаем только один показатель сометимости

По нажатию на три точки получаем это:

image

Важно сделать так, чтобы если муж и жена установят приложение вместе и введут в окружение друг друга то чтобы совместимость была одинаковая для них обоих. Мое предложение использовать только дату рождаения для высчитывания совместимости.

Remove all firebase services

As a developer, I would like to avoid legal problems with storing unneeded data to Firebase.

Acceptance criteria

  • Firebase is removed from all pubspec.yaml specs hence from all sources
  • All references are removed from the source code
  • The app has same functionality state as before refactoring

User feelings poll

poll-request_LI
image

Story

As a user, I would like to set evaluation data for my future predictions.

Brief

After rolling the screen user can see the scale of avaluation personal`s feeling during a day. This scale corresponds to bar cards, describen inProphecy List in Main #10.

Use Case

  • Scenario 1:
  1. User stays at one of two tabs, calls Простой (the Tab is pre-selected)
  2. User sees the scale with a parameter Настроение, wher one can choose the evaluation index for its own mood from 1 till 6 by marking the accurate meaning in a range. By defoult each paramrter is preselected by middle value (3 points). User can change the value or leave as it is.
  3. User clicks button Уточнить прогноз.
    Result: _The following window collapsed the next text appears instead (with a standart beackground colour): "Спасибо! Эти данные помогут системе ближе с Вами познакомиться".
  • Alternative scenario:
  1. User goes to a tab Расширенный.
  2. User sees the following parameters, each of them has an evaluation scale with a scale:
  • Настроение
  • Продуктивность
  • Отношения
  • Саморазвитие
  • Физическая активность

3a. By defoult each paramrter is preselected by middle value (3 points). User can change the value or leave as it is.
3b. User marks criteria to evaluate a well-being or saves defoult parametrs.
3c. User click the button Уточнить прогноз without settling all the Parametrs.
Result: : _The following window collapsed the next text appears instead (with a standart beackground colour): "Спасибо! Эти данные помогут системе ближе с Вами познакомиться".

SplashScreen

add splashscreen to android and iOS.
needed from designer: splashscreen image (high res), splashscreen color.
needed from dev: add it to mobile_app/. android/ ios/ files

Змінити повідомленпя про необхідність погодження з умовами

Екран реєстрації

Наразі: При незаповненні чекбоксу з умовами політики конфіденційності з'являється повідомлення: "Вы не приняли условий". Потрібен колл ту екшн окрім пояснення помилки
ТРЕБА ПОДУМАТИ НАД ОПТИМАЛЬНИМ ВАРІАНТОМ
(Цей варіант не дуже) Потрібно: "Поставьте галочку напротив "я принимаю условия", чтобы принять условия политики конфиденциальности и пользовательского соглашения"

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.