31 lines
1.4 KiB
Markdown
31 lines
1.4 KiB
Markdown
---
|
|
layout: portfolio
|
|
title: Smarthut
|
|
date-start: 2020-03
|
|
date-end: 2020-06
|
|
category: usi
|
|
languages: Spring + ReactJS
|
|
authors:
|
|
- Andrea Brites Marto
|
|
- Matteo Omenetti
|
|
- Jacob Salvi
|
|
- Tommaso Rodolfo Masera
|
|
- Nicola Brunner
|
|
- Filippo Cesana
|
|
- Christian Capeáns Pérez
|
|
images:
|
|
- smarthut/home-frontend.png
|
|
- smarthut/devices.png
|
|
- smarthut/scenes.png
|
|
- smarthut/automations.png
|
|
- smarthut/swagger.png
|
|
description: Smart home manager for (mocked) smart devices, complete with user-definable rooms, presets, and events.
|
|
repo-type: git
|
|
repo-url: https://tea.maggioni.xyz/smarthut
|
|
---
|
|
|
|
This is a 3 month software engineering project part of the second year of USI's curriculum. As a team leader, I had to manage a team of 8 people to develop Smarthut, a full-stack Spring + ReactJS web application that manages smart devices.
|
|
|
|
Smarthut is able to direcly control (mocked) smart devices, but it can also group devices in rooms, configure and apply pre-made settings to a group of devices, and trigger user-defined actions based on a user-defined condition on pre-selected devices.
|
|
|
|
Smarthut's backend is a Spring REST application, complete with JWT sessions, CRUD APIs for the different types of device, and a WebSocket API that propagates device status updates. The frontend is a ReactJS application with Redux storage to handle active and passive device updates.
|