Skip to content

Latest commit

 

History

History
154 lines (94 loc) · 7.12 KB

README_en.md

File metadata and controls

154 lines (94 loc) · 7.12 KB

Русский README

Code repository for sites смотрины.укр and смотрины.рус

Self-Development, Dating/Relationships, Family

Description of current functions of site "Смотрины"

(next plans can be found in tasks.md)

Description of idea and feedback

Proposal

  • saving of registration form fill in progress in local storage with possibility to clear it.

Email confirmation

  • and possibility to receive one more token for email confirmation in case of expired previous one.
  • simultaneously with email confirmation;
  • with the help of one time token, sent as email;
  • with the help of profile in social sites as Facebook and Vk.

Login Box

View / update / remove / analyze own profile

When email is changed, the letter is sent to the previous address, and the new one needs to be verified again. Some data has history of saving (height, weight, activity frequency, profile evaluation).

BMI analysis example:

BMI analysis example

Activate second stage

Profile menu -> Перейти к следующему этапу (becomes available when all first stage information is provided). Profile menu

Second stage activation dialog:

Second stage activation dialog Second stage activation dialog 2

Automated pair matching algorythm (for "Поиск второй половинки" (to find soul mate) goal)

  • users have verified emails;
  • users participate in automated pair matching;
  • users are not in active pair at the moment;
  • participants of different gender;
  • from same BMI category;
  • age - male participant can be within 7 years older or 2 years younger of female participant;
  • height - male participant can be (within) 25 cm higher or 5 cm lower female participant;
  • intentions in regards to some habits related to nicotine, alcohole intake, pornography watching and intimate relations outside of marriage should match (that is, users both are not going to do this in future, or both are going to do it to some extent; if participant hasn't decided yet, then he/she can match anyone in regards to this parameter);
  • one and the same appearance type;
  • from the same populated locality (to ease date organization, in initial version);
  • native language should match (or one of them should match);
  • processing in order of registration.

In code this logic can be found in PairMatcherTask.kt file and in PairsRepository.kt.

View formed pairs / organized dates

With help of user menu "Пары и Свидания" (Pairs and Dates) one can view corresponding information.

Pairs and Dates

What's next ?

View / analyze participant's profile with whom the pair was formed

One time profile view links are generated and sent via email when the pair is formed. It can additionally be generated using pair menu "Посмотреть профиль ..." (view profile ...).

Pair Menu

Date related actions

  • Я на месте (check in) - option to mark the arrival to date;
  • Подтвердить свидание (verify date) - provides possibility to enter date verification code received by other user;
  • Оценить профиль (evaluate profile) - truthfullness evaluation, suggestions in profile improvement / also possibility to view corresponding evaluation/suggestions of own profile;
  • Не получается прийти (cannot come) - actions in case impossibility to come to the date.

Date Menu

Pair decision

One can add "Решение" (decision) in regards to the pair with the help of corresponding pair menu option, provided at least 1 verified date.

Pair Decision

Adding / verifying / viewing dating place

In case when available dating place (in corresponding populated locality) and free time slot for automated date organization are missing, user gets opportunity to suggest such a place which should be checked and approved by the second user.

Date status which needs place suggestion

Adding dating place

Events view

There's a possibility to view "События" (Events) (option in user menu) connected to the profile, for example, its views by other users.

User Menu

View / analyze profile of author

Administration page

  • statistics on number of registered profiles and their removal;
  • possibility to send a test letter.

Logout from profile

Non-functional requirements

  • Encryption during transfer (https) and storage of data (Windows BitLocker, Linux Luks);
  • SEO (Sitemap.xml, meta tags);
  • SSR (styles, icons, server-side navigation);
  • Offline support.

Technologies

Technologies used are mentioned on the page acknowledgements, programming languages in section "Languages" on the current page.

Development

  • Docker
  • Postgres - bd-database-docker-build, bd-db-run in dev-aliases.sh;
  • Redis - bd-cache-docker-build, bd-cache-run;
  • Browser application - bd-ui-server;
  • One needs to create .env-dev in the project's root from .template-env and fill in the variables' values;
  • Add .db-password and .mail-password;
  • Download skivol/spring-fu and run spring-fu-publish-to-local;
  • Server application - bd-backend-server (this command launches server without integration with email service, instead letters will be printed to console);
  • Application should be available by link http://localhost:3000/.

Help

Help is welcomed in form of:

  • suggestions on the improvements of site's functions and the information laid down in it;
  • spreading and usage of the information present on the site, preferably with mention of the source;
  • other actions promoting wholesome development of the ideas and goals designated on the site.