Website for browsing and putting together PC builds.
-
Website
- Test user credentials:
- User: pcbuilder
- Password: pcbuilder
- Test user credentials:
- Source code
This is a fullstack web application that was made using a Javalin webserver, MariaDB database, and Angular frontend. The website is served by my Raspberry Pi at home. The Pi runs Nginx as a reverse proxy to forward requests to a docker container running the PC Builder webserver.
API Reference
PUT /users
Updates the current logged in user.
- Request body
- username: string
- displayName: string
- Request cookie
- JSESSIONID: string
cURL example
|
|
Response
|
|
POST /users/authenticate
Validates user credentials and assigns user to the current session if successful.
- Request body
- username: string
- password: string
cURL example
|
|
Response
|
|
POST /builds
Creates a new PC build under the current logged in user.
- Request body
- displayName: string
- description: string
- cpuIds: string[]
- motherboardIds: string[]
- storageIds: string[]
- memoryIds: string[]
- videoCardIds: string[]
- powerSupplyIds: string[]
- Request cookie
- JSESSIONID: string
cURL example
|
|
Response
|
|
GET /builds
Returns PC builds.
- Query parameters
- ids: string[]
cURL example
|
|
Response
|
|
PUT /builds
Updates PC build under the current logged in user.
- Request body
- uuid: string
- displayName: string
- description: string
- cpuIds: string[]
- motherboardIds: string[]
- storageIds: string[]
- memoryIds: string[]
- videoCardIds: string[]
- powerSupplyIds: string[]
- Request cookie
- JSESSIONID: string
cURL example
|
|
Response
|
|
DELETE /builds/:id
Deletes the PC build with provided id parameter.
- Request cookie
- JSESSIONID: string
GET /components/cpu
Returns CPU components.
- Query parameters
- ids: string[]
cURL example
|
|
Response
|
|
GET /components/motherboards
Returns motherboard components.
- Query parameters
- ids: string[]
cURL example
|
|
Response
|
|
GET /components/memory
Returns memory components.
- Query parameters
- ids: string[]
cURL example
|
|
Response
|
|
GET /components/storage
Returns storage components.
- Query parameters
- ids: string[]
cURL example
|
|
Response
|
|
GET /components/video-cards
Returns video card components.
- Query parameters
- ids: string[]
cURL example
|
|
Response
|
|
GET /components/power-supplies
Returns power supply components.
- Query parameters
- ids: string[]
cURL example
|
|
Response
|
|