alexkavanagh-dev / computer-system-showcase

0 stars 1 forks source link

# Computer System Showcase

Computer System Showcase is a website that allows users to create posts with an image and information surrounding computer builds they have made to share them with other users of the site. Users can also show appreciation and share feedback on builds by liking posts and comments on posts.

The aim of this website is to give users who are computer enthusiasts a place to showcase, view and discuss their computer builds similar to other websites like builds.gg and the completed builds section on pcpartpicker.com. My way to try differentiate this website from those other two was by making it simpler overall as builds.gg feels very cluttered and both websites place some emphasis on the price of the builds where I wanted to focus this website on just the build itself regardless of price and have a simpler, easy to navigate UI.

Features

Navigation Menu

Hero Image

Builds Section

Post Detail Page

Add Your Build Page

Search

Accounts

Like Posts

Edit Posts

Delete Posts/Comments

Featured Posts

Footer

Possible future features

Database Structure

The entity relationship diagram for the models of this website is below showcasing the fields in each model and any relationships between them.

erd

Wireframes

I did the wireframes for this website by hand and I have pictures of them below. The pages for 'Search Results' and 'Your Liked Posts' were based largely on just the builds section of the homepage. The design and layout of this website was influenced by other similar websites such as builds.gg and pcpartpicker.com.

wireframe wireframe wireframe

User Stories & Epics

The Epics and User stories for this project were made and tracked using GitHubs projects page. User stories were sorted into the 4 Epics here:

Each user story was sorted into the most relevant epic, given acceptance criteria to follow and then given tasks that must be completed to consider that user story finished. All the user stories can be viewed on the github projects page used here: GitHub Projects Page.

Sprints

This project was completed using the following sprint timelines:

Sprint 1 (07/05 - 12/05)

Sprint 2 (13/05 - 20/05)

Sprint 3 (22/05)

Sprint 4 (31/05 - 06/06)

Sprint 5 (07/06 - 14/06)

Sprint 6 (15/06 - 20/06)

Sprint 8 (28/06 - 03/07)

Testing

Validator Testing

HTML

html validation

CSS

css validation

Performance

performance validation performance validation

Javascript

jsvalidation

Python

python results

Accessibility

wave results

Compatibility Testing

Responsive Testing

Manual Testing

Test Label Test Action Expected Result Test Outcome
View Post List Load homepage Posts are listed with all correct information and image. Post list should be paginated when there is more than 12 posts. PASS
Open Post Click on a post title or thumbnail image The post detail page for the post clicked on will load up with all correct information and all approved comments for that post PASS
Create Post Click on Add your Build in navbar and fill out form A page containing a form to fill out information and an image for your build will load and once filled out and submitted, a post will be created and displayed on the website PASS
Edit Post Click on edit button on a post A page will load with the current posts information and image that can be edited and resubmitted to edit information on a post PASS
Like/Unlike Posts Click a posts like button on homepage or post detail The liked status of that post for that user will switch and update the like counted accordingly PASS
Register an account Go to the sign up page and make an account Once a username and password has been submitted, a user account will be made and logged into for that user PASS
Feature Posts Set featured post to true for a post When a post is set as featured, it will move to the top of the post list and have a featured ribbon in the top left corner PASS
Search Site Enter search query into search form The entered search query will be used to filter and then display any post matching that query PASS
Liked Posts List Go to liked posts page for a user All posts that user has liked will be displayed on a new page PASS
Delete post/comment Click delete button on post/comment A modal will pop up to confirm that you wish to delete the selected post/comment and when delete is clicked again, the selected post/comment will be deleted PASS

Fixed Bugs

Unfixed Bugs

Deployment

The website is currently deployed to Heroku.

The steps to deploy it were as follows:

A requirements.txt file will need to be created and maintained in your repository so heroku knows what it needs to install when deploying so that your website will function correctly.

Once deployed to Heroku with automatic deployment, the program will automatically update with new pushes to the repository.

Alternatively, you can choose manual deployment below where you select automatic deployment if you only want to deploy after certain changes.

This repository can be cloned by entering the command git clone https://github.com/alexkavanagh-dev/computer-system-showcase.git into the terminal of your chosen IDE.

The link for my website on GitHub Pages is here: https://github.com/alexkavanagh-dev/computer-system-showcase

Credits

Media

Code

Tools used