ZPI Day

KAZABUILD

PC Building Application

Members:   Adrian, Ziyad, Kacper and Artun
Project mentor:   Jose Fabio Ribeiro Bezerra

Project Objectives

Business Goals

The main business goal of our KAZABUILD application is to allow users to create their own PC builds using components featured on our website. Users should be able to filter components by factors such as power, compatibility, and price. The website is designed to make PC building as accessible as possible, targeting the widest possible demographic - even users with no technical knowledge should be able to create a PC suited to their specific needs.

The platform will also provide educational resources related to PC building, such as guides, FAQs, tips, and - most importantly - automatic PC build generation. In addition, users will have access to community features such as forums, reviews, and comments.

All web pages (and screens in the mobile version) must be easily accessible and function without errors, even in the case of unintended or incorrect user actions - the system should be “babyproofed” against user mistakes. The application will be considered to be functioning correctly if users can access it easily, navigate without confusion, and use all desired features without failure. Once deployed, the website should operate reliably across all components - backend, frontend, and database - and provide fast, responsive performance to all user interactions.

Measurable Outcomes and Tasks

The final version of the application should comply with the full list of requirements defined in our MVP, as follows:

  • The application delivers compatibility tips for matching parts.
  • The application provides questions to the user to know what build the user needs.
  • The application allows the user to filter out certain specs that a user doesn't need.
  • The application allows users to post their finished builds with all parts used.
  • The application provides a pc according to the user’s specified usage type.
  • The application allows users to rate the community pc builds.
  • The application provides parts within specified budget
  • The application allows you to create profiles with pc builds.
  • The application provides PC builds within a specified budget for specific use.
  • The application allows profile creators to decide if the profile is public or private.

All of these features will be implemented by integrating the backend (e.g., a CRUD API controller for the user) with the frontend (e.g., user webpages and mobile screens). Users will be able to edit their profiles, change settings, and create new builds. Each action should execute in under one second, confirming success if performed correctly and providing clear feedback when errors occur, ensuring application integrity.

Metrics and Verification

Each part of the codebase will undergo thorough unit and integration testing, followed by continuous improvements by the team to meet defined quality standards.

Backend testing: Each controller will be verified to ensure that data inserted into the database satisfies schema constraints and that all operations execute within acceptable time limits, even under heavy traffic.

Frontend testing: Each webpage and mobile screen will be tested for performance, responsiveness, and correct backend integration, particularly for critical components such as login, authorization, authentication, and image–text integration.

Success will be verified if:

  • All features function as intended under normal and stress conditions.
  • Average response time remains under 1 second for key user interactions.
  • Error handling provides clear user feedback without compromising system stability.
  • Accessibility and usability tests confirm that users can complete essential tasks with minimal confusion.

Description

Typically,​‍​‌‍​‍‌​‍​‌‍​‍‌ the task of assembling a personalized PC isn't easy for common day humans, cause of the sheer amount of components and potential compatibility problems. People who want to build their own PCs have difficulties in deciding on the suitable parts, avoiding errors, and managing to keep within their budget. An example of this would be a user that is new to the AI field that requires heavy system computing, but has no clue on what parts to use for a PC build. Tools available today are of great help but still remain sophisticated and not suitable for beginners.

KAZABUILD is a project that intends to simplify the process of building a personalized computer and make it available to everyone by offering an absolutely user-friendly platform that guides the users in choosing the compatible parts and giving them a chance to share and discuss their builds seamlessly through a web and ​‍​‌‍​‍‌​‍​‌‍​‍‌mobile interfaces.

Artifacts

Final Products: -mobile application -web application Supporting tools: -testing scripts -admin panel -CI/CD automation -Grafana+Prometheus metrics monitoring -Git version control -Github repository management -Docker image deployment -Dynamic data pricing module from external API Characteristics: Target deployment environment: Multiple services that are dockerized in a singular swarm Short description of functionality: -Picking compatible PC parts to users based on a questionnaire -Providing an option to compare parts and their attributes -Having a forum to have discussions on various topics -Having a build sharing community page to post, rate and save builds of others -Filtering parts and certain attributes to shrink the amount of parts listed -Rating PC builds posted on the forum

Beneficiaries

End Users

KAZABUILD individuals seeking to assemble custom desktop PCs, including students, gamers and office staff. KAZABUILD simplifies the complex process of hardware selection. This feature enhances user efficiency and comfort by ensuring component compatibility. KAZABUILD adapts to their specific requirements and their budgets.

Community features foster collaboration and discussion with other users constituted builds.

Internal Teams

Development and IT teams benefit from the project by working with easy to maintain technologies such as C# for backend and flutter for the web and mobile (android) app. Docker makes it easier to deploy and manage the application. CI/CD also reduces mistakes and saves time during updates. Team members gain practical experience in develop the application.

External Organizations

Computer hardware suppliers and educational institutions can also benefit from this project. Hardware companies can collaborate with the platform to show their products or provide real time price through API. Online retailers can also use the system to reach more customers who are interested in building PCs. Educational institutions like technical universities might use the platform as a teaching tool to help students learn about computer components.

Communities

The project also benefits the wider community by encouraging interest in technology and computer hardware. It creates a friendly environment where both beginners and experienced users can learn about building PCs and share their knowledge in a forum. Through the build sharing and forum part, users can help each other and exchange their ideas and discuss new trends in computer technology.

Tech Stack

Jira Visual-Studio-Code-(VS-Code) IntelliJ-IDEA Flutter Figma C#-(CSharp) Git GitHub Dart Android-Studio Android Azure Docker Kubernetes CentOS Jenkins Linux Grafana Prometheus RabbitMQ
Roadmap
Repositories