Skip to content
This repository was archived by the owner on May 23, 2026. It is now read-only.

Babushka-dev/Babushka-Spring

Repository files navigation

Babushka

Babushka is a recipe-sharing application created by four students as a study project. The idea is simple: users can create recipes, browse recipes from other users, save favorites, and organize recipes by categories.

The project is split into three parts:

  • Babushka Android: the mobile app used by users.
  • Babushka Django: the active backend API used by the Android app.
  • Babushka Spring: the first backend version, kept as a legacy project after the backend was moved to Django.

Babushka Spring

Babushka Spring is the old backend prototype for the project. It was selected at the beginning of development, but the active backend was later moved to Django. Because of that, this server is kept only as a reference for the first backend structure and endpoint design.

The Android app does not currently work with this Spring backend. For the working application flow, use Babushka Django.

Project Pair

Legacy Scope

This backend contains early implementations for:

  • user registration;
  • user login;
  • user disabling;
  • recipe creation;
  • recipe loading;
  • recipe pagination;
  • recipe search;
  • recipe update;
  • recipe deletion;
  • recipe image loading;
  • basic test and health endpoints.

It is useful for understanding the first backend design, but it is not the backend used by the current Android application.

Tech Stack

  • Java 25.
  • Spring Boot 4.
  • Spring Web.
  • Spring Data JPA.
  • Hibernate.
  • Jakarta Validation.
  • Lombok.
  • PostgreSQL.
  • Gradle Kotlin DSL.

Main Structure

Babushka-backend-spring/src/main/java/com/babushka/babushka/
  module/test/
    controller/     Test health and motivation endpoints
    service/        Test response creation
    entity/         Test DTO

  module/user/
    controller/     User registration, login, list, disable endpoints
    service/        User creation, login, and disable logic
    entity/         User entity
    repository/     User repository
    dto/            User DTO

  module/recipe/
    controller/     Recipe CRUD and image endpoints
    service/        Recipe business logic
    entity/         Recipe entity
    repository/     Recipe repository
    dto/            Recipe DTO

API Overview

Test:

  • GET /test/health
  • GET /test/motivation

Users:

  • POST /users/create
  • POST /users/login
  • GET /users
  • POST /users/{id}/disable

Recipes:

  • POST /recipe/create
  • GET /recipe/get-all
  • GET /recipe/get-page
  • GET /recipe/get-by-id/{id}
  • PUT /recipe/update-by-id/{id}
  • DELETE /recipe/delete-by-id/{id}
  • GET /recipe/{id}/get-image

Endpoint Notes

Recipe pagination supports optional query parameters:

GET /recipe/get-page?page=0&size=6
GET /recipe/get-page?page=0&size=6&search=pasta

Recipe images are returned as JPEG bytes:

GET /recipe/{id}/get-image

User login returns a token string when the credentials are valid.

About

No description, website, or topics provided.

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages