Reportr alternatives and similar software solutions
Based on the "Personal Dashboards" category.
Alternatively, view Reportr alternatives based on common mentions on social networks and blogs.
-
Grafana
The open and composable observability and data visualization platform. Visualize metrics, logs, and traces from multiple sources like Prometheus, Loki, Elasticsearch, InfluxDB, Postgres and many more. -
Thingsboard
Open-source IoT Platform - Device management, data collection, processing and visualization. -
Habitica
A habit tracker app which treats your goals like a Role Playing Game. -
Dashy
š A self-hostable personal dashboard built for you. Includes status-checking, widgets, themes, icon packs, a UI editor and tons more! -
ActivityWatch
The best free and open-source automated time tracker. Cross-platform, extensible, privacy-focused. -
Freeboard
A damn-sexy, open source real-time dashboard builder for IOT and other web mashups. A free open-source alternative to Geckoboard. -
wger
Self hosted FLOSS fitness/workout, nutrition and weight tracker written with Django -
Personal management system
Your web application for managing personal data. <[email protected]> -
Baby Buddy
A :baby: buddy to help caregivers track sleep, feedings, diaper changes, and tummy time to learn about and predict baby's needs without (as much) guess work. -
Thingspeak
ThingSpeak is an open source āInternet of Thingsā application and API to store and retrieve data from things using HTTP over the Internet or via a Local Area Network. With ThingSpeak, you can create sensor logging applications, location tracking applications, and a social network of things with status updates. -
Phant
Phant is a modular data logging tool for collecting data from the Internet of Things. -
DashMachine
Another web application bookmark dashboard, with fun features. -
simple-dash
A simple, fully responsive Dashboard to forward to the services of your choice! -
Homepage
A simple, standalone, self-hosted PHP page that is your window to your server and the web. -
iDashboard-PHP
HTPC Dashboard to load website services, written in PHP
Updating dependencies is time-consuming.
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of Reportr or a related project?
Popular Comparisons
README
Reportr
"Your life's personal dashboard."
Reportr is a complete application which works like a dashboard for tracking events in your life (using a very simple API). With a simple interface, it helps you track and display your online activity or your real-life activity (with hardware trackers or applications like Runkeeper), some trackers are available on this organization.
The project is entirely open source and you can host your own Reportr instance on your own server or Heroku.
[[Screen Preview](./preview.png)](./preview.png)
Start your instance
Reportr is really easy to run locally or on heroku-compatible services.
$ git clone https://github.com/Reportr/dashboard.git
$ npm install .
To run it locally, you should use foreman (configuration can be stored in a .env file):
$ foreman start
To deploy it on Heroku:
$ heroku config:set MONGODB_URL=mongodb://...
$ heroku config:set AUTH_USERNAME=...
$ heroku config:set AUTH_PASSWORD=...
$ git push heroku master
API and Events
Reportr uses an HTTP REST API to track events. Datas are always JSON encoded.
Endpoint | HTTP Method | Description | Arguments |
---|---|---|---|
/api/infos | GET | Get informations about this instance | |
/api/types | GET | Return all event types | |
/api/events | POST | Post a new event | <string>type , <object>properties |
/api/events | GET | List all events | <string>type , <int>start(0) , <int>limit |
/api/stats/categories | GET | Get categorized events stats | <string>type ,<string>field |
/api/stats/time | GET | Get time stats | <string>type ,<string>fields , <string>interval , <string>func |
/api/reports | POST | Create a new report | <string>title |
/api/reports | GET | List all reports | |
/api/report/:id | PUT | Update a report | <string>title , <array>visualizations |
/api/report/:id | DELETE | Remove a report | |
/api/alerts | GET | List all alerts | |
/api/alerts | POST | Create an alert | <string>type , <string>eventName , <string>condition , <string>title |
Special Events
Name | Description | Properties |
---|---|---|
reportr.alert | Triggered when an alert is triggered | <string>type , <string>eventName |
Configuration
Reportr is configured using environment variables.
Name | Description |
---|---|
PORT | Port for running the application, default is 5000 |
MONGODB_URL | Url for the mongoDB database |
REDIS_URL | (Optional) Url for a redis database when using worker mode |
AUTH_USERNAME | Username for authentication |
AUTH_PASSWORD | Password for authentication |
See types for informations about alert configurations.
Events
An event represent something to monitor at a defined date. For example if I'm monitoring the temperature in my home, I'll post an event home.temperature
with a property temp
:
$ curl -X POST -H "Content-Type: application/json" --data '{ "type":"home.temperature", "properties": { "temperature": 66 } }' http://localhost:5000/api/events
Visualizations
A visualization is a configured way to show data, for example in a pie, bar chart or time graph.
Types
Type | Description |
---|
Templates
Visualizations accept templates as most of rendering options. Template are processed using lodash's _.template method with some special functions:
$.date(date)
: returns a beautiful date
Alerts
Reportr lets you configure alerts to be triggered when specific condition is valid at a specific interval.
Types
Type | Description | Configuration |
---|---|---|
webhook | Post an HTTP request to a specific url with the data encoded in the body | |
Send an email notification | <string>MAIL_SERVICE , <string>MAIL_USERNAME , <string>MAIL_PASSWORD , <string>MAIL_FROM |
|
sms | Send a text message notification | <string>TWILIO_SID , <string>TWILIO_TOKEN , <string>TWILIO_FROM |
Condition
Condition for alerts are really easy to write, for example: COUNT > 9
, this condition will be valid if at least 10 events have been posted in the alert interval. Conditions can also use the event object, for example: event.temperature > 80
.
Trackers
Description | Link |
---|---|
Google Chrome Navigation | https://github.com/Reportr/tracker-googlechrome |
Home ambient (temperature, humidity, light) | https://github.com/Reportr/tracker-home-ambient |
Memory and CPU of computer | https://github.com/Reportr/tracker-machine |
Battery data | https://github.com/hughrawlinson/tracker-machine-battery |
Scale it
Reportr can easily be scaled on Heroku (and compatibles), use the REDIS_URL
to enable a task queue between workers and web processes.