Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/fastybird/miniserver
:control_knobs: FastyBird IoT MiniServer application
https://github.com/fastybird/miniserver
api fastybird iot management miniserver ui
Last synced: about 1 month ago
JSON representation
:control_knobs: FastyBird IoT MiniServer application
- Host: GitHub
- URL: https://github.com/fastybird/miniserver
- Owner: FastyBird
- License: apache-2.0
- Created: 2020-12-14T11:19:42.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2024-08-07T12:24:37.000Z (5 months ago)
- Last Synced: 2024-08-07T14:43:42.112Z (5 months ago)
- Topics: api, fastybird, iot, management, miniserver, ui
- Language: Vue
- Homepage:
- Size: 2.92 MB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE.md
Awesome Lists containing this project
README
![FastyBird MiniServer](docs/assets/fastybird_miniserver_readme.png)
FastyBird MiniServer Edition
This is FastyBird MiniServer Edition repository for starting new projects.
## What is FastyBird IoT MiniServer?
MiniServer is standalone application based on [FastyBird](https://www.fastybird.com) [IoT](https://en.wikipedia.org/wiki/Internet_of_things) software.
The highest quality of code and strong testing culture, make it best solution for build smart controller application.[FastyBird](https://www.fastybird.com) [IoT](https://en.wikipedia.org/wiki/Internet_of_things) MiniServer is an Apache2 licensed distributed application,
developed on top of the [Nette framework](https://nette.org) and [Symfony framework](https://symfony.com).### Features:
- Devices & connectors management
- User & access control management
- [{JSON:API}](https://jsonapi.org/) strong api for application management
- Responsive user interface
- Third party devices integration like [Shelly](https://www.shelly.cloud/en-cz), [Tuya](https://www.tuya.com) and other
- Full HomeKit with HAP protocol integration## Requirements
[FastyBird](https://www.fastybird.com) MiniServer is tested against [PHP](https://www.php.net) 8.1, [Redis](https://redis.io) 6.2 in-memory data store, [MySQL](https://www.mysql.com) relational database management system, [ReactPHP http](https://github.com/reactphp/http) 0.8 event-driven, streaming plaintext HTTP server and [Nette framework](https://nette.org/en/) 3.0 PHP framework for real programmers.
## Getting started
> **NOTE:** If you don't want to install it manually, try [docker image](#install-with-docker)
### Traditional installation
The best way to install **fastybird/miniserver** is using [Composer](https://getcomposer.org/). If you don't have Composer yet, [download it](https://getcomposer.org/download/) following the instructions.
Then use command:```sh
composer create-project --no-dev fastybird/miniserver path/to/install
``````sh
cd path/to/install
```Everything required will be then installed in the provided folder `path/to/install`
#### Running app
You have two options how to run this app
##### Running an app via ReactPHP http server
All what you need is just run one console command:
```sh
vendor/bin/fb-console fb:web-server:start
```This command will start build in web server which is listening for incoming http api request messages from clients.
##### Running an app via Apache or Nginx
You have to configure you web server running on [Apache](http://www.apache.org) or [Nginx](https://www.nginx.com) to server content from `public` folder.
In this folder is main entry point for accessing application api.
### Install with docker
![Docker Image Version (latest by date)](https://img.shields.io/docker/v/fastybird/miniserver?style=flat-square)
![Docker Image Size (latest by date)](https://img.shields.io/docker/image-size/fastybird/miniserver?style=flat-square)
![Docker Cloud Build Status](https://img.shields.io/docker/cloud/build/fastybird/miniserver?style=flat-square)Docker image: [fastybird/miniserver](https://hub.docker.com/r/fastybird/miniserver/)
#### Use docker hub image
```bash
docker run -d -it --name devices fastybird/miniserver:latest
```#### Generate local image
```bash
docker build --tag=miniserver .
``````sh
docker run -d -it --name miniserver miniserver
```## Initialization
This application is using database, and need some initial data to be inserted into it. This could be done via shell command:
```sh
vendor/bin/fb-console fb:initialize
```This console command is interactive and will ask for all required information.
After this steps, application could be started with [server command](#http-server)
## Feedback
Use the [issue tracker](https://github.com/FastyBird/miniserver/issues) for bugs or [mail](mailto:[email protected]) or [Tweet](https://twitter.com/fastybird) us for any idea that can improve the project.
Thank you for testing, reporting and contributing.
## Changelog
For release info check [release page](https://github.com/FastyBird/miniserver/releases)
## Maintainers
***
Homepage [https://www.fastybird.com](https://www.fastybird.com) and repository [https://github.com/fastybird/miniserver](https://github.com/fastybird/miniserver).