Skip to content

Carrito is an ecommerce website powered by mainly Python's Flask framework.

License

Notifications You must be signed in to change notification settings

alperencantez/carrito-ecommerce

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Carrito (E-commerce Website)

*Carrito is an ecommerce website powered by mainly Python's Flask framework.
Live demo is available on: https://carrito.pythonanywhere.com/


What is it capable of?

Shortly, most of the e-commerce features that you can think of are also available on Carrito.

  • In this app, there are two types of users. There is a customer and merchant profile, however as merchants can create new orders from other merchants they are also eligible becoming a customer.
    Important: Account type is being chosen at signing up process and it is a permanent choice.

Customers can

  • Search for products by name or choose to view products in ascending or descending order at /products

  • Go to a page dedicated to the product they wish to inspect, where they can add the product to their cart or Carrito with data containing quantity of the product.

After proceeding to /checkout and successfully submitting the form a checkout session will begin. This process is handled by Stripe.
Since this application is a demo, you can simulate a successful purchase by using 4242 4242 4242 4242 as card number, and enter a valid, Valid Until date. If you've done all of that right, the mail adress you've just put in the form at /checkout will receive an email saying "You've placed your order!" and will redirect you to another route displaying a similar message.

Merchants can

  • Anything a customer can do.

  • Add a product to the database. And, they can delete or edit already existing products.

    If a product gets deleted while a user has it in their cart, the item will be removed from their cart.

  • Merchants have some private pages, which are unaccessable for customers (app automatically redirects them to /home if they try sending a request to the endpoint). After a user places an order containing at least one of merchant's items, at merchant/pending merchants will see the orders can approve or reject their orders.
    According to the merchant's choice on order, customer receives another email about current status of their order and after that, customer's cart and merchant's pending orders get deleted.


I did not use any client-side frameworks or libraries other than jQuery in order to practice jinja2 template engine.

* Carrito is a Spanish word for cart. As it sounds fancier in Spanish I chose that as a mock-up brand name.

About

Carrito is an ecommerce website powered by mainly Python's Flask framework.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published