Rana Salem (LinkedIn | GitHub), Maryam Islam (LinkedIn | GitHub), Laila Al-Eissa (LinkedIn | GitHub), Viktorija Blumberga (LinkedIn | GitHub), Kuljeet Panesar (LinkedIn | GitHub), Andreea-Daniela Baciu (LinkedIn | GitHub), and Nadeen Bayley.
This website was submitted as a final group project when the authors were training towards a Tech Industry Gold Credential in software development, receiving their training through FDM Group. The project is a Barbie themed e-commerce website that sells Barbie themed clothing. The website has functionality to explore through the website pages showing particular collections of outfits and items. Refer to the initial commit made to the main branch to gain an idea of what the authors achieved in 4 days before submitting the project. This repository now serves for the authors to continue working on what was built in those 4 days.
The start script can be used to run the entire project using a single command: ./start
.
Note that you will likely need to have Maven installed (if not already) on your machine to allow execution of mvn
commands.
To run the project manually:
- Navigate to the
backend
directory (cd backend
), locate theBarbieEcommerceWebsiteApiApplication.java
file (src/main/java/com/fdmgroup/api/BarbieEcommerceWebsiteApiApplication.java
) and clickRun
(this applies if you are using VS Code. In other IDEs like Eclipse, import the project as a Maven project, right click on thebackend
directory of the project and select to run as a Spring Boot Application). - Navigate to the
frontend
directory (cd ..
followed bycd frontend
) - Run
npm i
(ornpm insall
) followed bynpm start
to load the frontend. This can be confirmed by visitinghttp://localhost:3000
via a browser.
WIP (work in progress): not all desired functionality has been achieved, this will be improved upon over time.
The e-commerce website is considered “done” when it is functional, responsive, and meets the following criteria: all core features, including product listing, shopping basket, user registration, login and logout functionality are implemented and functioning correctly. The user interface is polished, with intuitive navigation menus, well-designed pages and smooth transitions. The website is at least 80% tested, and the code is well documented.
- Altering resizing of webage to make it suitable for all screen sizes
- Adding images to cart
- Adding wishlist functionality in front- and back-end
- Updating tests to ensure they all work
- Adding an admin side to contribute to the addition of new items/maintenance of an inventory
- Ensuring all tests pass for all controller and service classes (code coverage is currently 93.8%)
Whilst working on this project, the authors used Scrum and Agile principles to organise and prioritise their tasks. This included daily scrums, a scrum retrospective, working in sprints, and composing a product backlog. Kanban boards and product backlogs were managed using Jira Software.