Inspiration

My inspiration for building this e-commerce web site was simply ordering a keyboard and mouse yesterday. I thought it would be cool if I could build a replica of eBay. I also thought of doing a website because I recently took a course on web development with the Django web framework.

What it does

The site allows for users to register onto the site. Once they have registered, they can create listings, bid & comment on other listings, add listings to a "watchlist", and select items by category. No actual financial transactions are taking place, however.

How I built it

I built this website using the Django Framework, using VSCode as my code editor. For the front-end of the website, I used the templating system provided by Django, which outlines templates in HTML/CSS and uses JavaScript to run code on the front-end. For the back-end, I created several models which use the built-in Django database, and used Python to create the URLs file, which then forwards requests to the views file, which I also used Python to code.

Challenges I ran into

One of the main challenge that I ran into was deciding which models to create to store the users, bids, comments, and listings for the e-commerce site. Creating the models in a way that would allow for the views to easily access them was pretty challenging. It was also difficult creating the views and creating the url paths properly.

Accomplishments that I'm proud of

I'm proud of getting the watchlist feature on here as that was particularly difficult to create in the views file. I'm also proud of getting the categories feature to work.

What I learned

I learned how to implement the built-in Django form system by reading the Django documentation. This built-in form system was much easier to implement in views than having to create forms that were not as responsive in the HTML-based templates.

What's next for ECommerce Site

The next small step for this site is probably going to be to add a search feature to locate listings quickly. A bigger plan for this site is to actually implement a functional financial transaction system.

Share this project:

Updates