Code Monkey home page Code Monkey logo

django-bookstore-project's Introduction

BookStore Project

Welcome to the BookStore project! This project is a web application built with Django, designed to provide a comprehensive platform for managing a bookstore. Users can browse, review, and purchase books, as well as manage their shopping carts.

Table of Contents

Project Overview

The BookStore project is a Django-based web application that allows users to browse books, add reviews, manage a shopping cart, and complete purchases. The project aims to provide a seamless and user-friendly experience for both customers and administrators.

Database

The project uses a relational database (e.g., PostgreSQL, MySQL, SQLite) to store the following entities:

  • User: Standard Django user model for authentication.
  • Book: Stores information about books including title, author, description, price, and publication date.
  • UserProfileInfo: Extends the user model to store additional profile information like portfolio site and profile picture.
  • Review: Stores user reviews for books.
  • CartItem: Stores items that users add to their shopping cart.

Features

  • User Registration and Authentication: Users can register, log in, and log out.
  • Book Management: Users can add, edit, and delete books.
  • Review System: Authenticated users can add reviews to books.
  • Shopping Cart: Users can add books to a shopping cart and proceed to checkout.
  • Search Functionality: Users can search for books by title, author, or keyword.

User Operations

Registration

Users can register by providing a username, email, and password. Upon successful registration, users are redirected to the login page.

Login

Registered users can log in using their username and password. Upon successful login, users are redirected to the home page.

Book Browsing

Users can browse books listed on the home page. Each book detail page displays the book information and reviews.

Adding Reviews

Authenticated users can add reviews to books. The review form is available on each book detail page.

Shopping Cart

Users can add books to their shopping cart. The cart displays the selected books, their quantities, and the total price. Users can remove items from the cart or proceed to checkout.

Installation

To run this project locally, follow these steps:

  1. Clone the repository:

    git clone <project link>
    cd project
  2. Install dependencies:

    pip install -r requirements.txt
  3. Set up the database:

    python manage.py makemigrations
    python manage.py migrate
  4. Create a superuser:

    python manage.py createsuperuser
  5. Run the development server:

    python manage.py runserver
  6. Access the application: Open your web browser and go to http://127.0.0.1:8000/.

Screenshots

Home Page

Home Page Home Page

Book Detail Page

Book Detail Page

Shopping Cart

Shopping Cart

Contributing

Contributions are welcome! Please fork the repository and create a pull request with your changes. Make sure to update tests as appropriate.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Notes for Me

There are a few things to add to this project

  • after purchase completion mail will be sent to users email
  • at navbar cart items number can be set
  • adding book image may be good option

django-bookstore-project's People

Contributors

olcaytp avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.