Skip to main content

Project

Plantasia Webshop

Dockerized Django + React/Tailwind flower marketplace with carts, payments, and account management.

RoleFull-stack (Django + React)
Date11-01-2023
Tech
DjangoSqliteReactReduxRedux-SagaTailwindDocker

Highlights

  • Course admission project graded 5/5
  • Docker Compose runs Django backend + React/Tailwind frontend together
  • Full e-commerce flow: browse/search, cart, checkout, accounts, inventory

Overview

A full-stack fictitious webshop for buying and selling flowers. This was my project admission for the Web Technologies course at Åbo Akademi, graded 5/5. The app ships as a single Docker Compose stack that runs the Django backend and the React/Tailwind frontend together. Demo creds are provided for quick login.

Plantasia shop page
Main shop view with featured flowers.

Problem / approach

  • Deliver a functional e-commerce flow (browse, search, cart, checkout) with user accounts and inventory management.
  • Keep local setup simple via Docker, avoiding Node/Python version drift.
  • Ensure responsive UI with clear routing and state handled through Redux + Redux-Saga.

Solution

  • Django backend with REST endpoints, auth, and payment flow; automatic DB population for demo data.
  • React SPA frontend styled with Tailwind; routing via react-router and state via Redux/Redux-Saga.
  • Docker Compose to build and run; fallback manual setup documented but marked deprecated.

Outcome

  • Fully functional shop with browsing, add/remove cart, checkout, account settings, and item management.
  • Responsive UI and usability features checked against a requirements matrix; security and routing covered.
  • Screenshots and demo credentials make it easy to evaluate locally.
Plantasia product view
Product detail page with cart controls.
Plantasia shopping cart
Shopping cart ready for checkout.
Plantasia account settings
Account settings for profile and credentials.
Plantasia my items for sale
Seller view to manage items for sale.
Plantasia my sold items
Order history of items already sold.
Plantasia payment successful
Checkout confirmation after successful payment.