RedmineKit

Redmine Dashboards

Dashboards
5.0 (0)·New installationer

Instrumentpaneler byggda av de sparade frågor du redan har — ett rutnät med dra-och-släpp av nyckeltal, tabeller och femton diagramtyper, aggregerade i SQL och begränsade till det som den som tittar får se.

$199 / en server

Flera servrar: $399

Återbetalning inom 5 arbetsdagar12 månaders uppdateringarKällkod ingår
En Redmine Charts-instrumentpanel i Redmine 6: en nyckeltalsruta med 10 000 ärenden, en ring per projekt, staplar för ärenden per prioritet, en statusring och ett linjediagram över skapade ärenden per månad.
En levande instrumentpanel Nyckeltalsrutor, ringar, stapel- och linjediagram på en tavla — varje siffra aggregerad i SQL ur Redmines egna behörighetsbegränsade data.
Widgettyper
23
Diagramvarianter
15
Redmine
4 · 5 · 6 · 7
Databaser
MySQL, MariaDB, PostgreSQL
Ändringar i kärnan
Inga

Bygg med dra och släpp

Ett rutnät där rutorna går att flytta och ändra storlek på och som sparar sig självt medan du arbetar. Placera nyckeltal, diagram och tabeller tills tavlan berättar det den ska — utan layoutfil och utan omladdning.

Femton diagramtyper

Stapel, liggande stapel, staplad stapel, linje, flera linjer, yta, cirkel, ring, radar, polär, mätare, tratt, värmekarta, treemap och förloppsring — ritade med Apache ECharts, i ljust och mörkt.

Dina sparade frågor, visualiserade

Rikta en widget mot en sparad fråga så ärver den filtret, inklusive anpassade fält, bevakare och underprojekt. Eller gör hela tavlan av frågan med ett klick.

Aggregerat i SQL

GROUP BY, COUNT, SUM och AVG körs i databasen, så hundratusen ärenden räknas i stället för att instansieras. Resultaten cachas per användare, widget och aktiva filter.

Anpassat efter den som tittar

Varje läsning utgår från Issue.visible(user), TimeEntry.visible(user) och Query.visible(user), så inget diagram kan summera ett projekt som läsaren inte är medlem i.

Filter, uppdatering och nedborrning

En filterrad ramar om hela tavlan, ett intervall per instrumentpanel håller en väggskärm aktuell, och varje stapel, tårtbit och cell leder till ärendelistan bakom den.

Se det köra i Redmine

Varje skärmbild här kommer från en vanlig Redmine 6-installation med pluginet lagt i plugins/. Instrumentpanelerna ligger under Redmines eget sidhuvud och egna menyer, för det är där de körs.

Bygg en tavla

Redigeringsläge på en instrumentpanel: varje widget visar draghandtag och hörn för storleksändring, och layouten sparas automatiskt.
Redigeringsläge Slå på Redigera så går varje widget att dra och ändra storlek på. Layouten sparas medan du arbetar.
Dialogen Lägg till widget: widgettyp, datakälla, valfri sparad fråga, mått och aggregering, valda i rullgardiner.
Lägg till en widget Välj widgettyp, datakälla och eventuellt en sparad fråga, sedan mått och aggregering. Ingen skriver SQL.

Widgetar

Väljaren för widgettyp med femton ECharts-varianter, nyckeltal och tabell, samt Markdown, anteckningar, HTML, iframe, aktivitetsflöde och senaste ärenden.
23 widgettyper Femton ECharts-varianter plus nyckeltal, tabell och sex innehållswidgetar — Markdown, anteckningar, HTML, iframe, aktivitetsflöde och senaste ärenden.
En widgets egen meny öppen på en instrumentpanel, med åtgärderna uppdatera, konfigurera och ta bort.
Widgetåtgärder Varje widget laddas för sig och har sin egen meny — uppdatera ett diagram utan att ladda om resten av tavlan.

Dela och växla

Delningsdialogen för instrumentpaneler med synligheterna privat, delad och publik, och väljare för roller, grupper och projekt.
Delning Håll en tavla privat, dela den med vissa roller, grupper eller projekt, eller öppna den för alla inloggade — avgjort via Redmines medlemskap.
Instrumentpanelväljaren i verktygsfältet med alla synliga tavlor och val för att sätta standard, exportera som JSON eller skapa en ny tavla.
Byt tavla Väljaren i verktygsfältet listar alla tavlor du kan se. Fäst en som standard, exportera den som JSON eller starta en ny.

Frågan är redan rapporten

Ingenting här ber dig beskriva dina data en andra gång. Filtrera en ärendelista som du alltid har gjort, spara den, och den sparade frågan blir det urval som en widget aggregerar över — exakt den relation Redmine själv använder för att rita listan.

En sparad fråga, tre vägar till en tavla
StegDet du görDet du får
1. Spara en frågaFiltrera ärendelistan — anpassade fält, bevakare, underprojekt — och klicka på SparaEn namngiven fråga, synlig för dem du delade den med
2. Rikta en widget mot denVälja frågan i widgetdialogenDatakälla och en rimlig standardgruppering, härledda åt dig
3. Eller generera hela tavlanKlicka på «Från fråga»En instrumentpanel med nyckeltal och diagram bundna till frågan, i ett enda anrop

Konfigurerat med rullgardiner, inte med SQL

En widget är en källa, en dimension, ett mått och en aggregering. Gruppera ärenden på status, prioritet, ärendetyp, tilldelad eller vilket datumfält som helst indelat i dagar, veckor, månader eller år; räkna dem, summera uppskattade timmar eller ta medelvärdet av färdiggraden. Ingen i teamet skriver SQL för att få ett diagram — och eftersom det inte finns någon SQL att skriva finns det heller ingen fråga som kan sträcka sig förbi behörigheterna hos den som läser.

Dialogen Från fråga: välj en sparad Redmine-fråga för att generera en instrumentpanel med nyckeltal och diagram bundna till dess filter.
Från en sparad fråga Välj valfri sparad fråga och få en färdig tavla med nyckeltal och diagram — status, prioritet, tilldelad, trend och en tabell — bunden till dess filter.

Konfigurera varje widget i samma formulär

Varje widget, oavsett om det är ett nyckeltal, en stapel eller en ring, ställs in i samma korta formulär: titel och typ, datakälla, en valfri sparad fråga för filter, ett mått och en gruppering med Top-N. Byt typ så anpassar sig formuläret.

Formuläret Konfigurera widget för ett nyckeltal: titel Totalt antal ärenden, datakälla Ärenden, sparad fråga, mått Antal ärenden, funktion count.
Nyckeltalsruta En siffra: ett mått och en aggregering över en sparad fråga.
Formuläret Konfigurera widget för ett stapeldiagram: Ärenden per prioritet, grupperat på Prioritet, Top N 20.
Stapeldiagram Gruppera på valfri dimension, till exempel prioritet, och kapa den långa svansen med Top-N.
Formuläret Konfigurera widget för ett ringdiagram: Ärenden per status, grupperat på Status.
Ringdiagram Samma fält med en annan typ. Byter du diagram behålls datainställningarna.
Inställningar för Redmine Charts: cachning på, cachens livslängd 300 sekunder, standardtema Ljust, intervall för automatisk uppdatering 0.
Plugininställningar Cachning, cache-TTL, standardtema och automatisk uppdatering, i Redmines egen inställningsvy.

En inställningssida för administratörer

Under Administration › Tillägg › Redmine Charts ställer du in cachning av resultat per användare, cache-TTL (5–86400 sekunder, standard 300), standardtema ljust eller mörkt, och ett standardintervall för automatisk uppdatering, där 0 stänger av den. Sidan är Redmines egen inställningsvy för plugins.

23 widgettyper, och plats för dina egna

Varje typ är metadata i ett register, så konfigurationsgränssnittet byggs av widgetens egen deklaration i stället för av ett handskrivet formulär per diagram.

Katalogen som följer med
FamiljTyperStälls in med
DiagramStapel, liggande stapel, staplad stapel, linje, flera linjer, yta, cirkel, ring, radar, polär, mätare, tratt, värmekarta, treemap, förloppsringKälla, dimension, mått, aggregering
Nyckeltal / siffraEn enda aggregerad siffra, med eget filtercount · sum · avg · min · max
TabellEtt sidindelat rutnät över samma behörighetsbegränsade dataKolumnväljare och filter
InnehållMarkdown, anteckningar, HTML, iframe, aktivitetsflöde, senaste ärendenFri text, eller ett av Redmines egna flöden

Ritat med Apache ECharts

Femton varianter, gjorda för ljust och mörkt, omritade vid storleksändring och läsbara även på en väggskärm. Paketet innehåller en färdigbyggd bundle, så installationen kräver varken Node eller ett byggsteg.

Varje segment borrar ned

Ett klick på en stapel, en tårtbit eller en ruta i värmekartan öppnar Redmines ärendelista filtrerad på exakt de ärendena. Siffrorna förblir granskningsbara, eftersom du alltid kan landa på raderna bakom dem.

Globala filter och automatisk uppdatering

En filterrad ramar om alla widgetar på tavlan samtidigt, och ett uppdateringsintervall per instrumentpanel håller skärmen i korridoren aktuell. Noll stänger av uppdateringen.

Mallar och ritningar

Spara en tavla som återanvändbar mall, duplicera den per team, eller exportera den som en JSON-ritning och importera den i en annan instans — från test till produktion utan att bygga om den för hand.

Ett plugin, en tavla för varje team

En leveransansvarig, en supportdesk och en enskild utvecklare byggde var sin på några minuter av sparade frågor de redan hade.

Instrumentpanel i full längd: nyckeltal, ringar, prioritetsstaplar, månadstrend, arbetsbelastning per tilldelad och en sidindelad ärendetabell.
Portföljöversikt Nyckeltal, ringar, trend, arbetsbelastning per tilldelad och en sidindelad ärendetabell.
Instrumentpanelen Ärenden tilldelade mig med ett nyckeltal, ett ytdiagram och en statusring.
Ärenden tilldelade mig En personlig tavla med ett ytdiagram och en statusring.
Instrumentpanelen Skapade ärenden med ett nyckeltal, en ring per ärendetyp och prioritetsstaplar.
Skapade ärenden Fördelning per ärendetyp, prioritet och status i en blick.
Supportpanel: nyckeltalsrutor för totalt antal ärenden och nedlagd tid, en statusring, staplar per prioritet, undertyp och modul samt ett linjediagram över skapade ärenden per månad.
Supportöversikt Ärenden, nedlagd tid, prioritet, undertyp och arbetsbelastning per modul för en supportperiod.
Supportpanel för ett helt år: nyckeltalsrutor för totalt antal ärenden och nedlagd tid, en statusring, staplar per prioritet, modul och undertyp samt ett linjediagram över skapade ärenden per månad.
Supportåret i siffror Ärendevolym, nedlagd tid och fördelning per prioritet och modul, med utvecklingen månad för månad.

Två källor inbyggda, och din bredvid

Ärenden och nedlagd tid kommer med sina dimensioner och mått redan registrerade, båda bakom Redmines egna synlighetsurval. En källa som ett annat plugin lägger till behandlas exakt likadant.

KällaDimensionerMått
ÄrendenStatus, prioritet, ärendetyp, projekt, tilldelad, författare, kategori, version, skapad, uppdaterad, slutdatumAntal ärenden, uppskattade timmar, färdiggrad
Nedlagd tidProjekt, användare, aktivitet, datumTimmar, antal poster
Din egenDet du registrerarDet du registrerar

Att utöka är att registrera, inte att patcha

En datakälla är en klass med ett namn, sina dimensioner, sina mått och ett base_scope som filtrerar på behörighet; en widgettyp är en hash. Registrera endera från din egen plugins init.rb med RedmineCharts.register_data_source eller register_widget_type, så dyker den upp i konfigurationsgränssnittet direkt — med filtrering, cachning och nedborrning på köpet. Ingenting i det här pluginet ändras för det.

Ingen aggregerar det hen inte får läsa

En instrumentpanel är ett snabbt sätt att läcka en siffra, så varje läsning börjar i urvalet för den som tittar i stället för att sluta med en kontroll mot det.

Först synlighet, sedan gruppering

Issue.visible(user), TimeEntry.visible(user) och Query.visible(user) begränsar relationen innan en enda rad räknas. En summa från ett projekt du inte är medlem i kan inte dyka upp i någon widget, eftersom de raderna aldrig fanns i mängden.

Fyra finkorniga behörigheter

Se instrumentpaneler, skapa dem, administrera alla och hantera mallar — var och en tilldelas per roll. Och allt är avstängt tills någon aktiverar modulen Instrumentpaneler för projektet.

Delning via medlemskapen

Ge en tavla till användare, grupper, roller eller hela projekt. Varje anrop löser upp viewable_by? och editable_by? på nytt via Redmines egna medlemskap, inte via en parallell åtkomstlista som glider isär.

Ingenting lämnar servern

Frontenden pratar bara med det här pluginets JSON-API på din egen Redmine, via sessionen och CSRF-token som redan finns. Ingen extern tjänst, inget licensanrop hem, ingen telemetri.

Byggt för att klara en stor instans

Att räkna hundratusen ärenden borde inte innebära att man laddar hundratusen objekt. Här gör det inte det.

Vad som händer när en tavla öppnas
FrågaSå hanteras den
AggregeringGROUP BY, COUNT, SUM och AVG körs i SQL — rader instansieras aldrig bara för att räknas
Mycket breda dimensionerTop-N-vikning håller svaret litet när en dimension har tusentals värden
Upprepade visningarResultat cachas per användare, widgetens ändringstid och aktiva filter via Rails.cache; TTL är en inställning och Redis fungerar som det är
En långsam widgetWidgetar laddas oberoende av varandra, så en tung fråga håller aldrig hela tavlan gisslan
Saknad JS-bundleRails renderar varje widgets data på servern som reserv, så sidan degraderas i stället för att bli tom

Portabelt med avsikt, inte av en slump

Stöd för flera versioner och databaser är inbyggt från början — migreringar, JSON-lagring och datumindelning är skrivna för att tåla skillnaderna.

OmrådeStödsHur
Redmine4.x, 5.x, 6.x, 7.xDeklarerar requires_redmine version_or_higher 4.0.0, utan överlagringar av kärnan som kan hamna i otakt
Rails5.2 → 8.0Migreringarna utgår från 5.2, som varje version upp till 8.0 förstår
Ruby2.5+Samma minimikrav som Redmine 4
DatabaserMySQL, MariaDB, PostgreSQLJSON lagras i vanliga textkolumner — identisk DDL överallt — med en serialiserare som väljer rätt form för varje Rails-version
DatumgrupperingDag, vecka, månad, årGrupperar på en portabel CAST(col AS DATE) och viker sedan in i intervall i Ruby — ingen leverantörsspecifik SQL
Köra migreringar igenSäkertDefensivt skrivna, så en avbruten uppgradering kan köras om

Skriptbart från första dagen

Varje endpoint ligger under /redmine_charts/api, svarar med JSON och tillämpar exakt samma behörigheter som gränssnittet — en tavla kan alltså skapas från CI eller genereras en per team.

MetodSökvägVad den gör
GET/dashboardsAlla instrumentpaneler som anroparen får se
POST/dashboardsSkapa en
GET/dashboards/:idHämta en tavla med dess widgetar
PATCH/dashboards/:idÄndra namn, layout eller inställningar
POST/dashboards/:id/duplicateKlona den, widgetar inkluderade
GET/dashboards/:id/exportExportera en JSON-ritning
POST/dashboards/importSkapa en tavla från en ritning
POST/dashboards/:id/widgetsLägga till en widget
GET/widgets/:id/dataAggregerad, behörighetsbegränsad widgetdata
GET/meta/data_sourcesKällor, dimensioner, mått och de sparade frågor du kan använda

Vad som finns i dag, och vad som kommer

Punkterna på färdplanen är tillägg till sin natur — nya datakällor, widgettyper och exporttjänster — så ingen av dem kommer att kräva någon migrering av dig. De står som färdplan, inte som funktioner, så att du kan köpa utifrån det som finns i paketet i dag.

FunktionStatus
Instrumentpaneler: skapa, duplicera, sätta standard, exportera och importeraKlart
Rutnät med dra-och-släpp, storleksändring och automatisk sparningKlart
Nyckeltal, tabell och hela ECharts-uppsättningen av diagramKlart
Visuell widgetkonfiguration utan SQLKlart
Återanvändning av sparade frågor och tavlor genererade med ett klickKlart
Globala filter som uppdaterar hela tavlanKlart
Nedborrning från diagram → ärendelistaKlart
Behörighetsbegränsad SQL-aggregering och cachning per användareKlart
Delning, mallar, ljust och mörkt temaKlart
Flera versioner, flera databaser, reserv renderad på servernKlart
Export till PDF, PNG och ExcelPlanerat
Bakgrundsjobb för mycket tunga rapporterPlanerat
Liveuppdateringar via WebSocketPlanerat
Schemalagda ögonblicksbilder via e-postPlanerat
Kiosk- / väggskärmslägePlanerat
AI-rapportbyggare med naturligt språkPlanerat
Widgetar för kalender, burndown och gantt-sammanfattningPlanerat

Priser

En server

$199

En Redmine-installation · obegränsat antal användare · 12 månaders uppdateringar.

Unlimited users12 months of updatesPriority email support
Köp licens

Flera servrar

$399

Obegränsat antal Redmine-servrar · obegränsat antal användare · 12 månaders uppdateringar.

Unlimited users12 months of updatesPriority email support
Köp licens
Köp