Про проєкт
DANbook – це фінальний проект студентів групи FS8, мета якого: потренувати на практиці Spring, React, SQL і інші технології, вивчені під час курсу навчання. Студентам вдалося відобразити аналог соціальної мережі Facebook з усіма необхідними елементами, включаючи створення аккаунта, додавання постів, додавання лайків і перепостів до постів, фотографій, коментарів та інших необхідних атрибутів.
У роботі були використані такі технології:
- BackEnd: Spring (Boot, Data, Security), Hibernate, MySQL, Swagger
- FrontEnd: React, Redux, Material-UI
- Testing: JUnit, Mockito
- AWS: EC2, MySQL RDS, S3
- Build tools: Maven, Travis CI
Увага! Для того, щоб авторизуватися в проекті, необхідно ввести:
Login: userbot2
Password: userbot2
Задачі
- Налаштувати функції Login / security: Authentication with JWT and Refresh Tokens, Google authentication, Mailbox verification, Password restore
- Налаштувати можливість ділитися постами в своєму профілі або профілі інших
- Додати зображення або гіфки до постів, додати можливість тега користувачів, додати лайки і взаємодії до постів, додати функцію писати і видаляти коментарі до постів
- Функція інфініті-скролла на домашній сторінці або профілях
- Додати можливість додавати в друзі, надсилати запит на додавання в друзі, приймати запити на додавання в друзі, бачити рекомендованих друзів (за алгоритмом кількості спільних друзів), функція пошуку друзів (database query), Websocket chats, пошук за повідомленнями в чаті, повідомлення про перебування друзів в онлайні і показник "був в мережі n хвилин / годин тому"
- Data & images storage: Images are stored on AWS S3 bucket, Images that are not used in application automatically deleted from AWS (through Entity Listener), External mySQL database on AWS RDS
Команда
-
Maksim Simonov
Розробка проекту
-
Rostyslav Stepanchuk
Розробка проекту
-
Taras Bashuk
Розробка проекту
Ментор
Станіслав Косинський
- Java Developer в компанії CTS (сфера fintech)
- Досвід роботи: 2,5 роки
- Один з наймолодших менторів в команді DAN.IT
- Є випускником нашого навчального центру, і сам проходив все, через що проходять випускники, тому вміє підказати і допомогти на всіх етапах роботи і взаємодії
- Допомагав хлопцям планувати спринти, розподіляти завдання між собою порівну, проводив огляд реалізації конкретного завдання на практиці
Етапи роботи над проєктом
- аналіз технічного завдання
- вибір дизайну
- декомпозиція робіт, створення беклогу у Trello
- налаштування проекту, базові організаційні завдання
- розподіл завдань між учасниками групи
- контроль за виконанням