Skip to main content

BEMServer web interface

Project description

Latest version Python versions Build status pre-commit.ci status

BEMServer is a free Building Energy Management software platform.

Its purpose is to store data collected in buildings and produce useful information such as performance indicators or alerts.

Installation

Settings

Flask custom var config available:

BEMSERVER_API_HOST = “localhost”

API host name (and port)

BEMSERVER_API_USE_SSL = True

Is API published through SSL?

BEMSERVER_API_AUTH_METHOD = “jwt”

API authentication method: “jwt” (preferred and default, fastest) or “http_basic”

BEMSERVER_UI_TIMEZONE_NAME = “UTC”

Default application timezone name, when not overrided campaign timezone

BEMSERVER_UI_NOTIFICATION_UPDATER_DELAY = 60000

Delay, in milliseconds, between each check of new notifications

BEMSERVER_UI_USER_GUIDE_URL = https://bemserver-docs.readthedocs.io/en/latest/user_guide.html

User guide URL

(optional) BEMSERVER_UI_PARTNERS_FILE = None

Absolute path of json file that describes the project’s partners

Example of BEMSERVER_UI_PARTNERS_FILE file structure:

[
    {
        "Nobatek": {
            "use_as_project_logo": true,
            "url": "https://www.nobatek.com",
            "logo": {
                "style": "height: 50px;",
                "src": "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+CjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSI1MzlweCIgaGVpZ2h0PSIxNzJweCIgdmlld0JveD0iMCAwIDUzOSAxNzIiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDUzOSAxNzIiIHhtbDpzcGFjZT0icHJlc2VydmUiPiAgPGltYWdlIGlkPSJpbWFnZTAiIHdpZHRoPSI1MzkiIGhlaWdodD0iMTcyIiB4PSIwIiB5PSIwIgogICAgeGxpbms6aHJlZj0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFoc0FBQUNzQ0FNQUFBRGxxWjVyQUFBQmZHbERRMUJwWTJNQUFDaVJmWkU5U01OUUZJVlAKVTBXUnFvTkZSQVF6VkNlN3FJaGpyVUlSS29SYW9WVUhrNWYrUVpPR0pNWEZVWEF0T1BpeldIVndjZGJWd1ZVUUJIOUEzQVVuUlJjcAo4YjZrMENMR0M0LzNjZDQ5aC9mdUE0UjZtV2xXUnd6UWROdE1KZUppSnJzcWRyMGlnRUgwWVJRUm1WbkduQ1FsNFZ0Zjk5Uk5kUmZsCldmNTlmMWF2bXJNWUVCQ0pZOHd3YmVJTjRwbE4yK0M4VHh4bVJWa2xQaWVlTU9tQ3hJOWNWengrNDF4d1dlQ1pZVE9kbWljT0U0dUYKTmxiYW1CVk5qWGlhT0tKcU91VUxHWTlWemx1Y3RYS1ZOZS9KWHhqSzZTdkxYS2MxZ2dRV3NRUUpJaFJVVVVJWk5xSzA2NlJZU05GNQozTWMvN1BvbGNpbmtLb0dSWXdFVmFKQmRQL2dmL0o2dGxaK2E5SkpDY2FEenhYRSt4b0N1WGFCUmM1enZZOGRwbkFEQlorQktiL2tyCmRXRDJrL1JhUzRzY0FmM2J3TVYxUzFQMmdNc2RZT2pKa0UzWmxZSzBoSHdlZUQramI4b0NBN2RBejVvM3QrWTVUaCtBTk0wcWVRTWMKSEFMakJjcGU5M2wzZC92Yy91MXB6dThIby94eXVveEo0SVFBQUFBZ1kwaFNUUUFBZWlZQUFJQ0VBQUQ2QUFBQWdPZ0FBSFV3QUFEcQpZQUFBT3BnQUFCZHduTHBSUEFBQUFHeFFURlJGQUFBQXNiZTFzYmUxc2JlMXNiZTFzYmUxc2JlMXNiZTFzYmUxc2JlMXNiZTFzYmUxCnNiZTFzYmUxc2JlMXNiZTEzbXNDM21zQzNtc0MzbXNDM21zQzNtc0MzbXNDM21zQzNtc0MzbXNDM21zQzNtc0MzbXNDM21zQzNtc0MKc2JlMTNtc0NzYmUxM21zQy8vLy9qbHRBTlFBQUFDRjBVazVUQUorL2dGQXdBa0RmanlDdjcyRFBjRUFDTUlDUDMxQ2Y3MkN2SUw5dwp6eEFRNW9kV3lBQUFBQUZpUzBkRUl5cGliRG9BQUFBSmNFaFpjd0FBdUl3QUFMaU1BY3oydXk4QUFBQUhkRWxOUlFmcEFSWU9LZ293CnJja2xBQUFCdzNwVVdIUlNZWGNnY0hKdlptbHNaU0IwZVhCbElHbGpZd0FBT0kybFUxdU9IQ0VNL09jVU9ZTHhzemxPRHpSUzduK0IKR0F6ejJ0bEltMWd6UWwxQXVXd1g2WGV0NmRjSU5Vd3dBay9RcXFUTkNKZ25wRTB2WTBOQk5rWUVPYVRJaVFCMkZkL08vbE5mTDErNwpFM0RTckdSa3dGbEFnQ3Y4UTNUUG1vSTlvaEcydTdJZlJ2cmgrYWFzWXFTUktPT0NHWklYQm9ZV2pabGxqeUExOHc3Qnhzc1JlR2JYCmUzZzdGbjZ1Vm1CTjNzN1p4dGhvandzditGWHZ1RDNoVzVEamc0aDlNaUVWTTY4TTRCYys0OStjVDBPcW9iYjRwcjNCM2dzM3dDckIKMWIzZ3ZISGJwZm40ZlU0bStqNmxQY21xb3BlSTBMNnd0cDNBV3dqc25tSVhJV05xbzFBZFRoTmZmVVA5MEdneXR2Vjl4WmxoQ2NGRgpnTzhDMHQ4VjVQT2hRR0FsdzBnMmsxQWtZWFlpN2VOQitEOC9GTURqU1R6RmNEQzhHZGc5cFVTRXo0Yk1VRGx1U3J2NkNFS1ozMWFtCnd0NEtUUHgyNXJtMmxZbGFuVVRWVlh4U29EMHFvNk1ISVpXUFNwRkxEMFg5bU5PNGFlV1BoRmhzN3RzeDEzdzBCelM3YmU1bERxTGQKZVZTUHlZdW5SUk9reklzVU5vTlRiaSsraTZCTkJDZTFlVkU0RE1hMXpvT2xsSE5sQ09JdTlUdmY3V2EvalIzMm0vdGl2UDhnZWpWaQorZ1BRRENCWkxORUF2Z0FBRUg1SlJFRlVlTnJ0WGVsQzhqb1FwUllwSUVnQlJWQ0VDKy8va0Jmd1E1clpNbW5UQlpuemx6UnBtTlBKClpFNldYbzlCOGhRZlNkcC83aG51SFlORFhYaEtqUi8zamF3MmJwd3dISTNiN3AraFBOSTZ1WEgySHYyMmUyZ29pNWVhdVhGeUhzYU8KTzhXd2RtNmNmRWZXZGk4TkpUQnVnQm9uakFadGQ5UVFqSDR6M0RnTXpYWGNIZW9PUlc5STIrNnFJUkJQalhIajhHVGp5bjJoT1dxYwp4aFhMaGQwVG5wdmt4bUZpNUxnalRCdmx4bUV5YmJ2REJqV1Nacmx4T0JnNTdnYXZUWFBEeUhFM2FKd2FoNE1sT3U0RHRZcXdEQ3dnCnZRODBsL2t5Y3R3YjZoZGhLUXd0Q1hZSGFFS0VKZkRhZHI4Tlh0UzNIdENEVWRzOU4valFsQWlMWWN0OXVvNVdRdEVMSnJhT3RPTm8KVUlTRmVHcTc3d1laay9hNGNaaTEzWG1EaEdaRldJQ0pUV1M3aklaRldJQ2s3ZTRiQkl4YTVZWUpLMTFHOHlLc0F3dEhPNHgycVdHTwpvOE5vUTRRMXgzRWZtTFhOallNbHdMcUtka1RZSW15cTBsVzBKTUlXTUttaFZ4bkFBNlZSY29CNTZab1VJdXd3NkxDZUV0T2VHaGFQCndpWWVLT0E5QXVTbGExS0VvcUY1N1g0U21JVi9pZjhIR1RjaWNFTWh3b2IvcjRNa2lCczFEQ3JHalFqY1VJaXdaYXJOZ3NLWStKWXoKYmtUZ2h0LzlsMXU2TndpSk8rSnZyamR1"
                "Vk9lRzRsQ1dzaXYzRWowMzRxZS9qQnZWdWFFUVlVdlBJdlNaay9nQmgzR2pPamNVSW16cApmU1FCdzByMDlJTnhvem8zL0tGb2hXOTZvSjdMUmplZGNhTTZOL3htcXhJTHFKZVVSYzkrR1RjcWMwT1IrYW8waDlBdVlZOCtVZWsyCk54YkxHaXVQeFEyRkNGdHRENGx5RGZzamNXUHg5bjQ4MWxoL0xHNGtmck5WQ3hPVm84ckRjR1Axc2I0WXJNWW1ZbkhEbjcwY1ZueFQKQmZzZWhodFhZdHdGTnhRaWJGVWRURGRYK2Z2Y21HOCsxd1dEMWRoU0pHN1VJTUlpcUJ6SFgrZkcxeWN3V0kxdFJlSkdMU0lzZ09xbwo5TC9PamZ4NGQ5eW9TWVIxb2NtT0dqZmlJUkkzNmhKaEhXajJSaGszNGlFT04yb1VZUXZRYkhMNDZ6bnorK09HNGxDV0NNbHNUY0FSCi9WdzQ0MFpGYnRRcHdoYWc0RWIwUDhpNFVaRWJ0WXF3Ti9pcDhlZlg5dHdmTnhveW1yK1orSWZDR1RlcWNVT2hkY1NZUHloaTBmaG4Kd2hrM3FuR2pkaEZXM1V6OEhiSEdqV3JjU1B4R2k3Rld6OStNTDZySittbWFuUGZNcGVrczAvRkk1RVkyVFVlbjJsN1N0QjhjYTQ5UApELys4VEhKK0crWHpWYmlSYjViTHorMTIrN2xjZnVkZi92SlJ1T0ZQV0ZZVllTL3dhNzJTbnRjZndkZWN2TXo4L0dDNU1aaStnTnFtCjJnOWdQQjBSMGZ2VGlIT3VoVDJwMzhoZ0R0Z21GMjg3OE9ENjg5dkREd1UzY2d4MzEyd0RJcXl5R1RhcXliamRrME1mUFJodURGS3EKd3NULzlRK21DYy94U1VJT1dVYzE2RGJuMys5MDhkMm1HamMyUkpYZ2ovY2JMY1lKajRwbW1HQmdLbnFjUkdRSDNjUnNVcXF5M3RTNwpuWUs2TTdzYU4rYkxOZi9BV2xoVTZPWEdBdGYzRGpiYk55SEM2cG9oblhyZk94WkpCcVY2TWhBc0xGd2hOeDZwbHFEZ083TXJjV1AxCkxqL3lublB2NitQR0hOZThYb0F5aXExRkVhaWhTTEJSZXQ1QXMvRnB3dnMxZ2h2UGNueVZsTy9BdjI3QWtha0NOK1lmL29jNDErSGoKeGhaWHRZSjFOQ0xDYXBvaHJOSlg3bXhoTHlMRzNIajJWY25WcFQ3dUhkNFdWSjRiODUzbXFVLzYxQlVQTjVhNEloUytLQ1N3R0ljdApLWnJCWDcvKzlIM3U5aWJFamJHZmJVemtIZkF5THJ0S2MyT2hvc1lwZ0NUSklYTmpoYXY1UUZVMEk4SnFOdHlpcUNaUlcrTmtEem9tCmdzWDZtaFZHOUxjUWNFMkU2MmpMY21QK3JuMXVHOHlOcjdXbUVrV1hZNGl3Q3EyM0NqVU9UTzRXRnRJZEIwSitEQ0ZYaURpejhaTGMKMEEwb1AzZ0w1QVpSTitWOEdsa1BxR2tHNm5tQjFLQ0hsY0E2cmxWUk01OFFiamdWbE9TR0lneTlZWVhmVitJR3JodE5VWFQvWGpzaQpiUGpSKzVSRnkzR0RERG1Dcmg0cURrdmx1TEhTUDNZMkxmN3FCVzRRU2ErYzZIRjNSRmpYa1plNXNZT1lUNVhrQnBYUmNiZ3hlVXBuClA2ZFN6a1pVQ0ZNTVIwdHhZMDVrdk5ZZjMrZTA5dWFOR0czd3FNSmJmNEhySmpPc2lzK3pEUkYyUUFZR3cxRzJ2eEJuU2lmUk1ZdloKMWlaSi8xelZuam5Na1BDVnQ2RDlOWFdIcjhFTXYyMkI2ZHNia0ZHM0RncDFZcSsvTFl3YmkwLzBNMUpYV0c0UU1TNmVvcHlSQkJxdApKUHpOdUNJczVjQ2RmUFNlVkVSUXlNRzFsdTV2TlpGaE1nNWVzaXVwaUxnR0g0aElUNFRWT3V3WDhobmZib0hWMm1kZWxodVlWMXY2CkpUb2p3anBmS3BVTmdlbVAvWXVuRXA0YlE5ZThsTy9FODlnTE55WXBreGxEanJFYU42RGJ3S0VpSEJoUXhNRnhBeWU5ZHN5UnhWNmIKdFNMQ29zK1F6Ri9nVWloT0lKdDYzWU5TUkk0SFh4SjI1c2FJMS9GZlBHOFN4QTNvTnFoWkJLd0xPQmFPRytnVjZDbEtyLzVEV2ZUTgpGUDlMd20yUU9SWk1EdWc0cUphSStRd1JEcUVjUjRhVmtpTGdPNU4vbTVZYjhOdGVLUW9CZVozaEJwSDB5cG1YNktZSWkyM09wR1p4CjFnU1lqMnFwcjZvSURTclBubzhFdkRUcGJyWGNBTkVpSFNyK0I4d01vbEdhQW5pS3d5NEM2WXdJVzR4cThIa00zTGkyUnlXQlNZbVcKeUxxd1l3dmVkZ0VHSmpJcnBPVEc0aWhhL1FyZ09NQ2dRbklEVDM5bzNwM2hqeEViRW1HTEZzT3hJVHRWUW9NQk1DblJFbDJYMXdQNQpvZmltbE54NDA1a1BSQ1dmN3E4VU4zRFNpNW1pOUxvcXdyNEV2QU1pdHp0aXFQdUR3OUZnaFJGTSthZ2lTbTRBeDcvaVduU1hZS3pkCkh3bHU0S1RYanI5VnBac2lyUEpUdndCRk1xN3RjVU9jTzBDdUxYZ2pGWEE5VkJFZE4rWkh5ZVlGZ0VIRm5XOWdidUNrRnpkRklmOVoKL1g4WmdqQVJGbzM5MHJDR1hKS2Jqam1vNjBwZ3lXQVpDZnlaVkF5djR3WW94YnQ5VU5DTktqRTNjTklyRjdyVEdSRzJhREpFV0hFcApNMHJlT1NrSTFCQTcyVUMrTFRnWWpjWU40QTc0OWNKZlVrSEVBNXowRXRlcCsyUEVGa1JZRkc2SXJndjVwRXhzbVoyUjQ1aElhblZ3CjNyb0ViaUViK2x2U2NlTlRiVUhKd2NDbU1EWDRLVXF2cXlJczhnUmk1VlB4alFNTWpyNFRqcEpaK3FSWnhscWVHMkNWNzI3THdpMzQKTG5JRGdSK3J5UDhWb3lFUnRtZ0grSnM4aTBiRWMyTElnTHJRd0VlNm1QNkw5dUQrOHR6d1dwVkRVQzA3K2VKSFJZell2QWlMdEJmUApzQ1lXaHo4SzRoQWF5ckJ4NmUxdzNlSEdQS0FXYVlweVJpZEZXTmtSVk9TR01FU2lFQmpOM21kQjkxYTJ3STA4b0JaNVJPbW9DSnRKClB5bzZNWlIrRE9FR0tEdldibDZxeW8zOFdCWWgzRGpLZHpCMFI0VHRTOFVEdVhHUWZpelBEZStlcHc1d3cwbWdoakVKUWhFak5pVEMKRnFPYWJuSkR1OE91Vlc0NHJzQmJlaTBGb3dvUk5zYWhMUDVtbkdFQWNjTXpyalhDaldDdjBUMXU0SVVidXg2UFRvcXdtQnVCODVRNgp1REVJdWdLNW05ellZSEpRVzU3K2RkamZ2NFpFV01kaWdkeVFpd2R3UTBxd2twUDlZWkk2WnpuRnlwbC9IY3RDNUFZK05FaFFlQlVpCmJJeERXUlROT0g4al"
                "R0Wkc1SWJBTXlIM1JkQjdNa0pwMDJoNlNrM2NJTFMyTlhjdVZDZEZXTUtlaDcxVVBlckZpMVNYTUVpaVpNL04KdUFsNnBSSHhUZ24zZUVWdWZDeTF5R1Z1elBVaFJ5ZEYyQjRSbjRpVEpXUzNzbm9LS3ZvYmg2UEJsOTYwRHpwYW5odGdhWStvbHZMQQozS0QyVVRJaFIyZEVXQkRWSURLSmsxZ1VKVTdGeGxtZTRTek03MDlJZHFMZDZhdS9wVkphVzhtTFFnbHVFS01LSFhJb1JOZ1laMGdyCm1nSEphVFFJU1JURm9ZQmpPUFFyeXpPVTdMbDVNemdKWjZJd0JRdExyZC93WmJjWlVOeWd6dmlpUW81dWlyQTlLbmpkQjFUdkxzbEIKVmJFQkI4ckMzT0lXNEpvWWpRazZudkxjZ0N0K1pjR1VBOFVOYW41TTZiR2RFV0ZoRElEbjFzS2FWUlJCdXBreWRaLzJxR0RLVmNKNApVL2gvbHVjR25NU1dDemhJYnNBbDdHY1FTM3dhdWhuRHIvVStlUi9oMVdBOFlyazh3cTB4bHNYdTdkZTIwQ0V3M25USVBWK0FjcDA1CjhQemxCaFdhRzlSQlVaaDdYcHMxSmNJaWEyRTdzWU1ienNlN1dYNkM4UFFBTmVRcjBnd1dSQ3lyNGdZOVhIeVFaZzBFelEzcXhGbTAKbEtPYkl1d0ZPTDRjcW1zSGZOYjJDZ2RmcjJ3ak5EZFV5OGJ5bzhycWNLNHBDUjhzdUthSXd5Tmh5TkZORWZZSDJCdlFOTjNqcngwUQpqV3FQbUlIaXZaT0ZGbFhjNlB2ZTVBTDAwVEx6VTVpazRvV1BLL0M0d05LUU9QVUhoQnlKMzJqTmlMQkVWRU00bTZtdWN1aGdxQWFICmU4MWJQck52UTAxaG55VnlDUVpqUEFLS0dEM2hhTDQ3ZXB2NjVRWnhwQk9vdjVzaTdEOFFjVEpCanNSZml1N1kzbDlSZ1dRWi85TVYKZXlMaVZuR0RHVlMramlIa3lNL0pNajAzZW9UbzVvUWNIUlZoR1hOUTVjYUVQWkRaR05hN3d4aEJEY2M1d045UThFd2VrVTV5QXgwaQp2dE5Gb3llM3oyUTU1cHVmbVVjQU42aWp6SXMzSURSME0wYW9DQ3VaYTFoMENtTnl5VGVxaTJselVqanZLL09kODRmbjFJQWNNK1hCCmRLVE5DK1RJYjlFSG9kTy9VNjRqLzdnT0VDSGNJQTVvS2U3Qzc0NElTMFkxQS9Mdm5pVFQ4MEdCNHl5bHd4aWN1MkJiUFZkMUdndXkKbE02L3BISW5DalRkYzllN2tOd2dUdlpjdjUwdk84cFhiN3RpSW9PWVRSemZsODVrODJ2elViQnhDRGVvMXlnYzM5RlZFZllLaGNQQgpGc00wSzFITGhUbE9UWlFrOUhQQTZDemxPMGh5WTM2VVVPQUdjNWo1ZXJ0Y3J2Sjh1WHpiZ204L2lCdVU2SGJiaGw4aVhWa0dmak53ClVZM0M0MEJ6UFpkcG53UVlUZ04zSHdqY0lJMUNjWVBLVVlrSTR3WjF0TzF2eU9IdlcwTWlMQnZWSktIR29LYTU1YWdCZlpraU9EdGgKNkZLSXppcUxSMUU3eWZITk1RaGgzQ0RmNHhweStMdmFrQWpMSnRnR211c3NQTlNBM2RTdEZzY09TSFA3MHlGenVjSDRYZWwyQS9jVQpsdVV4QklIY0lJL1MvOVp5b3gwUnRrZ09sVVZFYXNCdVBxbEdLbHpWUUVHcVVVL0ZqVnh2NExkakFFSzVRUVkwQ3gwMzJoSmhBNmwxCmZWdkcvYURXRkh5aldPYmZuNUwwZE53UUxRNktoZ3dyb2R3Z1NmcXpuY2tiWHJVbHdqcVlLcmNNdlhKT0RuRmo0TzA0N1lCODVFZ1EKbFZuVzcvUUd6b1g3UDZ0eWd5VHBKZUx4ZmordDNJeUJvTnVnekw4cjRvYlBHYkdYZ0Q2TElzT0Y0aUJueEwyVGNLRVNMaXZPYTRwZgpmRGczeVBkWTloUzVyOVpFV0lCcHpQdGhMOSt5NUl5RVk2bUY4R2ZTcDdyTDFzUWJuQ2ljYjQ5K3JKZEJkK3Y4dzRLcUtsZk1MbHNUCllRUFpFWFN2OUkrZkh5ZmMyOGpPTW1OZTVIb0NQc2pYQ1RWOU0yTUZXZGpMRHZydWNUODN5Sm5RT2VUd2ZJNVJEbVdKdGN1QnZZLysKZGVhaE1OUGNtS3B3Nkt2c1JGTTh4RTF1NUFSRHFFVGErUWZKanB3dS9mWEdYL200KzJiMnBtbnFwa2FWcmRmZnR5akMwdlJBQjdDOQpKbFAvTkR0emNSc3hCdFBFK1RwZVJ6cjVhRHdyMG1QeU1oMndyY2xNbTI4K0FUMjJieXQrUmZuWDVnTVpjaTAra1FOUUpiOXlBbDdECk5TVENCaVhZQmxrLy9jRXNpeUVFRHJMWlQzWDlzT0RxT2Z0NUxLdWFBbHJrdjdzVjh5OVYrYzMxZ2UrekRXdUQ3RGhhdUJuRDBCbkkKWjByRWFDSHNaZ3hEaHlCbEh4b1NZV01rMkF4MVFGREMyaFpoRFcwallZM1d3czBZaG02QkpVZnJJcXloZFRCVGlZWkUyQ2k3SEF4MQpZYXE5Y2pzY2ZyY1JJNm94MUlleGVtOUZJS3FMc0liV1FXeXZhQ2p6RlNPNWFhZ1YrT3FIWmtSWUMwWHZBWU9wWThrV2JzWXdkQmlECmZ2cnZ4ckhKVTR5VVZFd1IxdkMzRUZ1RU5md2R4RmdQYVBpYk1CSFd3TUh2Tmt5RWZWQTBkUFdzNFE1aElxeUJRK0xuUnR1dmFHZ0oKSnNJYU9QamRSb3hkRG9ZN1JFTkh6Um51RUNiQ0dqaFlLR3JnNE0rS21najdxUEJ6dzlZRFBpcjgzREFSOWxIaFAzUE5STmhIaGZmdwp5Q2k3SEF6M0NLL1VaaUxzNDhLM1d0UkUyTWVGTC9sbEl1emp3bmVTcngzSzhzQ1FIWWV0QjN4b2lDcTlpYkFQamJFMHFwZ0krOWlRCmRIb0xSUjhjd3ByUnRsL04wRGI2M0xCaUlxeUJ1enpBUkZnRGQzbUFIY3BpNkRFWDY1b0lhemlEdUpIQ1JGakRQMlJ3cFkrRm9vWmYKZ1B0S1RJUTFGTkVmM1pMb3RoNnd5L2dmRE9vdEl3M0VGN0VBQUFBWmRFVllkRU52YlcxbGJuUUFRM0psWVhSbFpDQjNhWFJvSUVkSgpUVkJYZ1E0WEFBQUFKWFJGV0hSa1lYUmxPbU55WldGMFpRQXlNREkxTFRBeExUSXlWREUwT2pReU9qRXdLekF3T2pBdzVsdU1Ed0FBCkFDVjBSVmgwWkdGMFpUcHRiMlJwWm5rQU1qQXlOUzB3TVMweU1sUXhORG8wTWpveE1Dc3dNRG93TUpjR05MTUFBQUFvZEVWWWRHUmgKZEdVNmRHbHRaWE4wWVcxd0FESXdNalV0TURFdE1qSlVNVFE2TkRJNk1UQXJNREE2TUREQUV4VnNBQUFBRzNSRldIUnBZMk02WTI5dwpl"
                "WEpwWjJoMEFGQjFZbXhwWXlCRWIyMWhhVzYya1RGYkFBQUFJblJGV0hScFkyTTZaR1Z6WTNKcGNIUnBiMjRBUjBsTlVDQmlkV2xzCmRDMXBiaUJ6VWtkQ1RHZEJFd0FBQUJWMFJWaDBhV05qT20xaGJuVm1ZV04wZFhKbGNnQkhTVTFRVEo2UXlnQUFBQTUwUlZoMGFXTmoKT20xdlpHVnNBSE5TUjBKYllFbERBQUFBQUVsRlRrU3VRbUNDIiAvPgo8L3N2Zz4K"
            }
        }
    },
    {
        "Flask": {
            "url": "https://flask.palletsprojects.com/en/latest/",
            "logo": {
                "style": "height: 50px;",
                "src": "https://flask.palletsprojects.com/en/latest/_images/flask-logo.png"
            },
            "text": "The Python micro framework for building web applications."
        }
    }
]
(optional) BEMSERVER_UI_PLUGINS = None

List of absolute file paths that locate the __init__.py file from each UI plugin package to load

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bemserver_ui-0.9.1.tar.gz (337.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bemserver_ui-0.9.1-py3-none-any.whl (447.2 kB view details)

Uploaded Python 3

File details

Details for the file bemserver_ui-0.9.1.tar.gz.

File metadata

  • Download URL: bemserver_ui-0.9.1.tar.gz
  • Upload date:
  • Size: 337.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for bemserver_ui-0.9.1.tar.gz
Algorithm Hash digest
SHA256 9e6e9c487f2d5c7c9c7b4b12b532121329ffc16fce3a87edba7eedbc7e203c96
MD5 2e193b7fcf390c93d5748d6cd5691379
BLAKE2b-256 790495484b0d3e3402b3e4ae439ecae3f073b9639fdc788bdd0185ad84826946

See more details on using hashes here.

Provenance

The following attestation bundles were made for bemserver_ui-0.9.1.tar.gz:

Publisher: build-release.yaml on BEMServer/bemserver-ui

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file bemserver_ui-0.9.1-py3-none-any.whl.

File metadata

  • Download URL: bemserver_ui-0.9.1-py3-none-any.whl
  • Upload date:
  • Size: 447.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for bemserver_ui-0.9.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5e53876412467d420ac4971a29e6797ecd39c0799eff5c9e8004d8ed46a8a052
MD5 fb4862895969eb5a43743438cfa69017
BLAKE2b-256 87df5082722af1d15766ec8f957db42049b8949e860f98391c626eb24c87835b

See more details on using hashes here.

Provenance

The following attestation bundles were made for bemserver_ui-0.9.1-py3-none-any.whl:

Publisher: build-release.yaml on BEMServer/bemserver-ui

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page