DIY server in PHP/Laravel for self hosted screen generation.
Find a file
Benjamin Nussbaum 715e6a2562 add features
* feat: autojoin toggle
* feat: auto add devices
* feat: proxy feature
* feat: support puppeteer in docker
* feat: toggle to activate cloud proxy
* feat: relay device information
* feat: relay logs to cloud
* feat: migrate on start
* feat: calculate battery state, wifi signal
* feat: eye candy for configure view
* feat: update via api
2025-03-03 21:24:22 +01:00
.github Create FUNDING.yml 2025-02-12 22:49:41 +01:00
app add features 2025-03-03 21:24:22 +01:00
bootstrap add features 2025-03-03 21:24:22 +01:00
config add features 2025-03-03 21:24:22 +01:00
database add features 2025-03-03 21:24:22 +01:00
docker add features 2025-03-03 21:24:22 +01:00
public feat: update to Laravel 12 starter kit (#1) 2025-02-25 12:15:35 +01:00
resources add features 2025-03-03 21:24:22 +01:00
routes add features 2025-03-03 21:24:22 +01:00
storage initial commit 2025-02-12 22:15:57 +01:00
tests add features 2025-03-03 21:24:22 +01:00
.dockerignore add features 2025-03-03 21:24:22 +01:00
.editorconfig Set up a fresh Laravel app 2025-02-08 15:05:41 +01:00
.env.example add features 2025-03-03 21:24:22 +01:00
.gitattributes Set up a fresh Laravel app 2025-02-08 15:05:41 +01:00
.gitignore feat: update to Laravel 12 starter kit (#1) 2025-02-25 12:15:35 +01:00
artisan Set up a fresh Laravel app 2025-02-08 15:05:41 +01:00
composer.json feat: update to Laravel 12 starter kit (#1) 2025-02-25 12:15:35 +01:00
composer.lock add features 2025-03-03 21:24:22 +01:00
docker-compose.yml add features 2025-03-03 21:24:22 +01:00
Dockerfile add features 2025-03-03 21:24:22 +01:00
example.png initial commit 2025-02-12 22:15:57 +01:00
LICENSE.md Create LICENSE.md 2025-02-12 22:35:04 +01:00
package-lock.json chore: update dependencies 2025-02-25 15:52:09 +01:00
package.json feat: update to Laravel 12 starter kit (#1) 2025-02-25 12:15:35 +01:00
phpunit.xml feat: update to Laravel 12 starter kit (#1) 2025-02-25 12:15:35 +01:00
README.md feat: update to Laravel 12 starter kit (#1) 2025-02-25 12:15:35 +01:00
README_byos-screenshot.png feat: update to Laravel 12 starter kit (#1) 2025-02-25 12:15:35 +01:00
vite.config.js feat: update to Laravel 12 starter kit (#1) 2025-02-25 12:15:35 +01:00

Laravel Trmnl Server

This is a PoC of a TRMNL server, written in Laravel. Inspired by https://github.com/usetrmnl/byos_sinatra

Screenshot

Requirements

Installation

Clone the repository

git clone git@github.com:bnussbau/laravel-trmnl-server.git

Copy environment file

cp .env.example .env
php artisan key:generate

Install dependencies

composer install
npm i

Run migrations

php artisan migrate --seed

Run the server

To make your server accessible in the network, you can run the following command:

php artisan serve  --host=0.0.0.0 --port 4567

Usage

If your environment is local, you can access the server at http://localhost:4567 and login with user / password admin@example.com / admin@example.com

Add your TRMNL Device

http://localhost:4567/devices

  • Add new device
  • You can grab the TRMNL Mac Address and API Key from the TRMNL Dashboard. Or debug the incoming request to /api/setup to determine.

Flash Firmware to point Device to your server

See this YouTube guide: https://www.youtube.com/watch?v=3xehPW-PCOM

Generate Screen

  • Edit resources/views/trmnl.blade.php
  • To generate the screen, run
php artisan trmnl:screen:generate

License

MIT