Skip to content

blikses/CafeMap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 

Repository files navigation

CafeMap

Авторы проекта:

Федченко Мария Дмитриевна,

Семидьянова Ксения Сергеевна

Краткий функционал:

Удобный и быстрый сервис для поиска эстетичных локаций, который экономит время пользователей и предоставляет актуальную информацию.

Причины выбора темы:

В наше время ежедневно возникает вопрос «Куда пойдем погулять?» Особенно важно, чтобы место было не только интересным, но и эстетически привлекательным. Обычно поиск таких мест занимает много времени: пользователи просматривают Instagram, Telegram или TikTok, затем проверяют расположение в картах. Это может занять от 30 минут до 1,5 часов. Наш сайт поможет сократить время поиска, предоставляя удобный каталог локаций с фильтрами по местоположению, типу места и другим параметрам.

Основные функции сайта:

  1. Каталог локаций с фотографиями, названиями, адресами, ближайшими станциями метро, координатами на картах, типом места (улица, кофейня и др.) и описанием.

  2. Поиск по параметрам:

  • Ближайшее метро

  • Тип локации (улица, кафе, ресторан и т.п.)

  • Рейтинг

  • Фото

  1. Интеграция с картами (Yandex Maps) для быстрого просмотра местоположения.

  2. Добавление новых локаций пользователями.

  3. Промокоды для сотрудничающих заведений.

  4. Регистрация пользователя.

  5. Авторизация.

Дополнительные возможности:

  • Удобный и современный интерфейс с адаптивным дизайном.

  • Просмотр всех локаций на одной карте

  • Добавление локации

  • Изменение всех параметров локации

  • Загрузка фото

  • Хранение данных в БД

Конечные технологии, которые использовались при реализации проекта:

  • Язык программирования: Python

  • Фреймворк: Flask

  • База данных: SQL, SQLite3

  • API: REST для взаимодействия с фронтендом

  • Yandex Maps API

  • ORM: SQLAlchemy

  • requirements.txt

  • Хеширование пароля

  • ООП

  • Хостинг

Интерфейс:

  • Bootstrap для адаптивного дизайна

  • Jinja2 для HTML-шаблонизации

База данных location:

Включает 2 таблицы:

  1. locations (id, name, type, address, metro, coordinates, map_link, photo, description, promo_code, rating, PRIMARY KEY)
  2. user (id, username, email, password_hash (хешированный пароль))

Описание структуры классов программы и за что они отвечают:

  1. class LocationForm - (Форма для добавления и редактирования локации)
  2. def add_location - Добавление новой локации
  3. def allowed_file - работа с файлом
  4. def show_map_with_photos - показывает точки на карте с помощью биботеки folium
  5. def edit_location - редактирование локации
  6. def delete_location - удаление локации
  7. class User - модель пользователя User в Базе данных
  8. class Location - Модель локации Location в Базе данных
  9. class RegistrationForm - класс для регистрации пользователя
  10. def load_user - Загрузчик пользователя
  11. def index - Главная страница
  12. def show_locations - Страница всех локаций
  13. def about - Страница о проекте
  14. def locations_map_with_photos - Страница с локациями на карте
  15. def register - Регистрация
  16. def login - Вход

Как запустить проект?:

  1. Скачайте зип архив с проектом и разархивируйте папку "CafeMap" в проект в пайчарме.
  2. Добавьте requirements.txt в проект и введите эту команду pip install -r requirements.txt в терминал.
  3. Запуститt код app.
  4. Чтобы получить возможность редактировать, добавлять и изменять локации зарегистрируйтесь!!

Этапы разработки:

  1. Проектирование структуры БД и API.
  2. Разработка сайта.
  3. Создание frontend-интерфейса (шаблоны, адаптивность).
  4. Интеграция с картами.
  5. Развертывание на хостинге.

Целевая аудитория:

  • Люди, ищущие красивые места для фотосессий и прогулок.
  • Посетители кафе и заведений, желающие найти уютные места.
  • Владельцы заведений, заинтересованные в продвижении.

About

The best site for viewing cafe and restaurant locations

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors