forked from massivebox/ecodash
Update links to point to the new website, remove duplicate content from README, add building instructions
This commit is contained in:
parent
37c515bec4
commit
57b97d3ab5
28
BUILD.md
Normal file
28
BUILD.md
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
# 👷 Building EcoDash
|
||||||
|
|
||||||
|
Here's how to build EcoDash in both binaries and as a Docker container. This is not necessary for most cases - we provide both pre-built binaries and containers for Linux ARM and x86_64 - however in devices with unsupported architectures it's necessary.
|
||||||
|
|
||||||
|
You're encouraged to first check the installation instructions to see if a pre-built container or binary is already available.
|
||||||
|
If you really have to build it yourself, we recommend you Docker over binaries.
|
||||||
|
|
||||||
|
## Binaries
|
||||||
|
|
||||||
|
### Linux
|
||||||
|
|
||||||
|
1. Download the Go Compiler from https://go.dev/dl/ or from your repository's package manager (it's usually called `go` or `golang`)
|
||||||
|
2. Download the Git SCM from https://git-scm.com/download/linux or from your package manager (it's always called `git`)
|
||||||
|
3. Clone the repository by running `git clone https://gitea.massivebox.net/ecodash/ecodash.git ` inside a command prompt
|
||||||
|
4. Switch to the project directory with `cd ecodash`
|
||||||
|
5. Download the dependencies with `go get ecodash`
|
||||||
|
6. Build with `go build`. This will generate an executable, `ecodash`, in the same directory.
|
||||||
|
|
||||||
|
### Windows
|
||||||
|
|
||||||
|
1. Install the latest release of the Go Compiler for Windows from https://go.dev/dl/
|
||||||
|
2. Install the Git SCM from https://git-scm.com/download/win. The "Standalone installer" is recommended. All the default settings will work fine.
|
||||||
|
3. Clone the repository by running `git clone https://gitea.massivebox.net/ecodash/ecodash.git ` inside a command prompt
|
||||||
|
4. Switch to the project directory with `cd ecodash`
|
||||||
|
5. Download the dependencies with `go get ecodash`
|
||||||
|
6. Build with `go build`. This will generate an executable, `ecodash.exe`, in the same directory.
|
||||||
|
|
||||||
|
## Docker
|
92
README.md
92
README.md
|
@ -1,95 +1,21 @@
|
||||||
# 🌿 EcoDash
|
# 🌿 EcoDash
|
||||||
|
|
||||||
[![status-badge](https://woodpecker.massivebox.net/api/badges/massivebox/ecodash/status.svg)](https://woodpecker.massivebox.net/massivebox/ecodash)
|
[![status-badge](https://woodpecker.massivebox.net/api/badges/ecodash/ecodash/status.svg)](https://woodpecker.massivebox.net/ecodash/ecodash) [![Visit our website](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMTA4IiBoZWlnaHQ9IjIwIiByb2xlPSJpbWciIGFyaWEtbGFiZWw9InZpc2l0OiBvdXIgd2Vic2l0ZSI+PHRpdGxlPnZpc2l0OiBvdXIgd2Vic2l0ZTwvdGl0bGU+PGxpbmVhckdyYWRpZW50IGlkPSJzIiB4Mj0iMCIgeTI9IjEwMCUiPjxzdG9wIG9mZnNldD0iMCIgc3RvcC1jb2xvcj0iI2JiYiIgc3RvcC1vcGFjaXR5PSIuMSIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1vcGFjaXR5PSIuMSIvPjwvbGluZWFyR3JhZGllbnQ+PGNsaXBQYXRoIGlkPSJyIj48cmVjdCB3aWR0aD0iMTA4IiBoZWlnaHQ9IjIwIiByeD0iMyIgZmlsbD0iI2ZmZiIvPjwvY2xpcFBhdGg+PGcgY2xpcC1wYXRoPSJ1cmwoI3IpIj48cmVjdCB3aWR0aD0iMzMiIGhlaWdodD0iMjAiIGZpbGw9IiM1NTUiLz48cmVjdCB4PSIzMyIgd2lkdGg9Ijc1IiBoZWlnaHQ9IjIwIiBmaWxsPSIjNGMxIi8+PHJlY3Qgd2lkdGg9IjEwOCIgaGVpZ2h0PSIyMCIgZmlsbD0idXJsKCNzKSIvPjwvZz48ZyBmaWxsPSIjZmZmIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBmb250LWZhbWlseT0iVmVyZGFuYSxHZW5ldmEsRGVqYVZ1IFNhbnMsc2Fucy1zZXJpZiIgdGV4dC1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiIgZm9udC1zaXplPSIxMTAiPjx0ZXh0IGFyaWEtaGlkZGVuPSJ0cnVlIiB4PSIxNzUiIHk9IjE1MCIgZmlsbD0iIzAxMDEwMSIgZmlsbC1vcGFjaXR5PSIuMyIgdHJhbnNmb3JtPSJzY2FsZSguMSkiIHRleHRMZW5ndGg9IjIzMCI+dmlzaXQ8L3RleHQ+PHRleHQgeD0iMTc1IiB5PSIxNDAiIHRyYW5zZm9ybT0ic2NhbGUoLjEpIiBmaWxsPSIjZmZmIiB0ZXh0TGVuZ3RoPSIyMzAiPnZpc2l0PC90ZXh0Pjx0ZXh0IGFyaWEtaGlkZGVuPSJ0cnVlIiB4PSI2OTUiIHk9IjE1MCIgZmlsbD0iIzAxMDEwMSIgZmlsbC1vcGFjaXR5PSIuMyIgdHJhbnNmb3JtPSJzY2FsZSguMSkiIHRleHRMZW5ndGg9IjY1MCI+b3VyIHdlYnNpdGU8L3RleHQ+PHRleHQgeD0iNjk1IiB5PSIxNDAiIHRyYW5zZm9ybT0ic2NhbGUoLjEpIiBmaWxsPSIjZmZmIiB0ZXh0TGVuZ3RoPSI2NTAiPm91ciB3ZWJzaXRlPC90ZXh0PjwvZz48L3N2Zz4=)](https://ecodash.xyz) [![Support the project](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMTI0IiBoZWlnaHQ9IjIwIiByb2xlPSJpbWciIGFyaWEtbGFiZWw9InN1cHBvcnQ6IHRoZSBwcm9qZWN0Ij48dGl0bGU+c3VwcG9ydDogdGhlIHByb2plY3Q8L3RpdGxlPjxsaW5lYXJHcmFkaWVudCBpZD0icyIgeDI9IjAiIHkyPSIxMDAlIj48c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiNiYmIiIHN0b3Atb3BhY2l0eT0iLjEiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3Atb3BhY2l0eT0iLjEiLz48L2xpbmVhckdyYWRpZW50PjxjbGlwUGF0aCBpZD0iciI+PHJlY3Qgd2lkdGg9IjEyNCIgaGVpZ2h0PSIyMCIgcng9IjMiIGZpbGw9IiNmZmYiLz48L2NsaXBQYXRoPjxnIGNsaXAtcGF0aD0idXJsKCNyKSI+PHJlY3Qgd2lkdGg9IjUzIiBoZWlnaHQ9IjIwIiBmaWxsPSIjNTU1Ii8+PHJlY3QgeD0iNTMiIHdpZHRoPSI3MSIgaGVpZ2h0PSIyMCIgZmlsbD0iI2RmYjMxNyIvPjxyZWN0IHdpZHRoPSIxMjQiIGhlaWdodD0iMjAiIGZpbGw9InVybCgjcykiLz48L2c+PGcgZmlsbD0iI2ZmZiIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZm9udC1mYW1pbHk9IlZlcmRhbmEsR2VuZXZhLERlamFWdSBTYW5zLHNhbnMtc2VyaWYiIHRleHQtcmVuZGVyaW5nPSJnZW9tZXRyaWNQcmVjaXNpb24iIGZvbnQtc2l6ZT0iMTEwIj48dGV4dCBhcmlhLWhpZGRlbj0idHJ1ZSIgeD0iMjc1IiB5PSIxNTAiIGZpbGw9IiMwMTAxMDEiIGZpbGwtb3BhY2l0eT0iLjMiIHRyYW5zZm9ybT0ic2NhbGUoLjEpIiB0ZXh0TGVuZ3RoPSI0MzAiPnN1cHBvcnQ8L3RleHQ+PHRleHQgeD0iMjc1IiB5PSIxNDAiIHRyYW5zZm9ybT0ic2NhbGUoLjEpIiBmaWxsPSIjZmZmIiB0ZXh0TGVuZ3RoPSI0MzAiPnN1cHBvcnQ8L3RleHQ+PHRleHQgYXJpYS1oaWRkZW49InRydWUiIHg9Ijg3NSIgeT0iMTUwIiBmaWxsPSIjMDEwMTAxIiBmaWxsLW9wYWNpdHk9Ii4zIiB0cmFuc2Zvcm09InNjYWxlKC4xKSIgdGV4dExlbmd0aD0iNjEwIj50aGUgcHJvamVjdDwvdGV4dD48dGV4dCB4PSI4NzUiIHk9IjE0MCIgdHJhbnNmb3JtPSJzY2FsZSguMSkiIGZpbGw9IiNmZmYiIHRleHRMZW5ndGg9IjYxMCI+dGhlIHByb2plY3Q8L3RleHQ+PC9nPjwvc3ZnPg==)](https://ecodash.xyz/contribute)
|
||||||
|
|
||||||
EcoDash is a simple way to show your users how much your server consumes.
|
EcoDash is a simple way to show your users how much your server consumes.
|
||||||
It's intended as a medium of transparency, that gives your users an idea about the consumption of your machine. It's not meant to be 100% accurate.
|
It's intended as a medium of transparency, that gives your users an idea about the consumption of your machine. It's not meant to be 100% accurate.
|
||||||
|
|
||||||
You can see it in action here: https://ecodash.massivebox.net
|
You can see it in action here: https://demo.ecodash.xyz
|
||||||
|
|
||||||
## Requirements
|
## Get started
|
||||||
|
|
||||||
- A working HomeAssistant installation
|
Check out the documentation in our [website](https://ecodash.xyz) to get started with EcoDash.
|
||||||
- An energy consumption sensor, such as a [smart plug](https://www.aliexpress.com/item/1005003188500978.html), to which your server is plugged in and connected.
|
|
||||||
- CO2 Signal added as integration into HomeAssistant
|
|
||||||
|
|
||||||
## Installation
|
- [📖 Introduction](https://ecodash.xyz/docs)
|
||||||
|
- [🛣 Roadmap](https://ecodash.xyz/docs/roadmap)
|
||||||
#### Using Docker run:
|
- [⬇️ Install](https://ecodash.xyz/docs/install)
|
||||||
|
- [⚙️ Setup](https://ecodash.xyz/docs/setup)
|
||||||
```
|
- [🆘 Support](https://ecodash.xyz/docs/support)
|
||||||
docker run -v /absolute_path_to/config.json:/app/config.json -v /absolute_path_to/database.db:/app/database.db --name ecodash -p 8080:80 gitea.massivebox.net/massivebox/ecodash
|
|
||||||
```
|
|
||||||
|
|
||||||
This will open the container on port 8080. Replace "8080" in the command with whatever number you want to open that specific port.
|
|
||||||
|
|
||||||
#### Using Docker Compose:
|
|
||||||
|
|
||||||
Create a file `docker-compose.yml` with the following content:
|
|
||||||
|
|
||||||
```
|
|
||||||
version: '3'
|
|
||||||
services:
|
|
||||||
ecodash:
|
|
||||||
container_name: ecodash
|
|
||||||
image: gitea.massivebox.net/massivebox/ecodash
|
|
||||||
ports:
|
|
||||||
- '8080:80'
|
|
||||||
volumes:
|
|
||||||
- ./config.json:/app/config.json
|
|
||||||
- ./database.db:/app/database.db
|
|
||||||
restart: always
|
|
||||||
```
|
|
||||||
|
|
||||||
Run the container with
|
|
||||||
|
|
||||||
```
|
|
||||||
docker compose up -d
|
|
||||||
```
|
|
||||||
|
|
||||||
This will open the container on port 8080. Replace "8080" in the file with whatever number you want to open that specific port.
|
|
||||||
|
|
||||||
#### Using the binary
|
|
||||||
|
|
||||||
Grab a binary from the Releases page and run it. You can use the `PORT` environment variable to override the default port (80).
|
|
||||||
|
|
||||||
## Set up
|
|
||||||
|
|
||||||
As soon as you navigate to the container's exposed port, you will see the admin dashboard, there you will have to fill all fields to get EcoDash running.
|
|
||||||
|
|
||||||
- **HomeAssistant's base URL**: the base URL which you use to access HomeAssistant on your server. It should be something like `http://INTERNAL_IP_ADDRESS:8123/` or `https://homeassistant.youdomain.com/`.
|
|
||||||
- **HomeAssistant's API Key:** Get it by going into your HomeAssistant profile settings (at `http://HOMEASSISTANT-BASE-URL/profile`) -> Create Long Lived Access Token (at the very bottom of the page) -> Insert a name -> Copy the string it gives you
|
|
||||||
- **Installation Date**: Select the date of the first day in which your server's consumption was logged in its entirety. Users won't be able to see consumption data before this date.
|
|
||||||
- **Polled Smart Energy Summation entity ID:** After your plug is added in HomeAssistant, get it in Overview -> look for an entity called like "[Name of your plug] Polledsmartenergysummation" -> Settings -> Copy the Entity ID. Check that the unit of measurement in the "Info" tab is kWh.
|
|
||||||
- **CO2 signal Grid fossil fuel percentage entity ID**: Get it in Settings -> Devices and Integrations -> Add Integration -> CO2 Signal -> Get your token from the website -> CO2 signal Grid fossil fuel percentage -> Settings -> Copy the Entity ID. Check that the unit of measurement in the "Info" tab is %.
|
|
||||||
- **Admin username and password** don't need to be the credentials to HomeAssistant! They are the credentials to log into the admin panel.
|
|
||||||
|
|
||||||
If you've just added your energy meter into HomeAssistant, note that it will take eight days for EcoDash to show meaningful data.
|
|
||||||
|
|
||||||
## Support
|
|
||||||
|
|
||||||
If something isn't working, you can find some help here:
|
|
||||||
|
|
||||||
- [Matrix support room](https://matrix.to/#/#support:massivebox.net)
|
|
||||||
- [Issues page](./issues)
|
|
||||||
- [Contact me](https://massivebox.net/contact.html)
|
|
||||||
|
|
||||||
## The road ahead
|
|
||||||
|
|
||||||
EcoDash is currently released as a minimum viable product, still far from completion. Here's a non-extensive, unordered list of the changes I want to make.
|
|
||||||
|
|
||||||
- Adding support for energy returns (like solar panels)
|
|
||||||
- Supporting hot reload, removing the need to restart EcoDash each time the settings are changed
|
|
||||||
- Improving clarity for when data is missing
|
|
||||||
- Making FossilFuel Percentage optional and adding other sources
|
|
||||||
- Supporting energy consumption readings from internal sensors
|
|
||||||
- Adding some way to change header/footer links directly from the admin panel
|
|
||||||
- Eventually being completely HomeAssistant-independent
|
|
||||||
- Adding Woodpecker CI
|
|
||||||
- Organizing branches and releases better
|
|
||||||
- Moving documentation to a wiki and expanding it
|
|
||||||
- Extensively documenting the theming capabilities of EcoDash
|
|
||||||
- Publishing some alternative themes
|
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
|
||||||
|
|
|
@ -86,8 +86,8 @@ func loadConfig() (config Config, err error, isFirstRun bool) {
|
||||||
Label: "Admin",
|
Label: "Admin",
|
||||||
Destination: "/admin",
|
Destination: "/admin",
|
||||||
}, Link{
|
}, Link{
|
||||||
Label: "Docs",
|
Label: "EcoDash",
|
||||||
Destination: "https://gitea.massivebox.net/massivebox/ecodash",
|
Destination: "https://ecodash.xyz",
|
||||||
NewTab: true,
|
NewTab: true,
|
||||||
Primary: true,
|
Primary: true,
|
||||||
})
|
})
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
<h1>Admin Panel</h1>
|
<h1>Admin Panel</h1>
|
||||||
<p>Here you can edit all the configurations for EcoDash.</p>
|
<p>
|
||||||
|
Here you can edit all the configurations for EcoDash.<br>
|
||||||
|
<a href="https://ecodash.xyz/docs/setup/admin-panel">Documentation</a>
|
||||||
|
</p>
|
||||||
|
|
||||||
{{if .Warning}}
|
{{if .Warning}}
|
||||||
<article class="card" style="background-color: {{if .Warning.IsSuccess}}#008000{{else}}#ff5050{{end}}; color: white">
|
<article class="card" style="background-color: {{if .Warning.IsSuccess}}#008000{{else}}#ff5050{{end}}; color: white">
|
||||||
|
|
|
@ -29,7 +29,7 @@
|
||||||
{{range .Defaults.FooterLinks}}
|
{{range .Defaults.FooterLinks}}
|
||||||
<a href="{{.Destination}}" {{if .NewTab}}target="_blank" rel="noopener noreferrer"{{end}}>{{.Label}}</a> |
|
<a href="{{.Destination}}" {{if .NewTab}}target="_blank" rel="noopener noreferrer"{{end}}>{{.Label}}</a> |
|
||||||
{{end}}
|
{{end}}
|
||||||
<a href="./accuracy-notice">Disclaimer</a> | <a href="https://gitea.massivebox.net/massivebox/ecodash" target="_blank" rel="noopener noreferrer">EcoDash</a>
|
<a href="./accuracy-notice">Disclaimer</a> | <a href="https://ecodash.xyz" target="_blank" rel="noopener noreferrer">EcoDash</a>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
|
|
Loading…
Reference in a new issue