{{ template "head.tpl.html" . }} {{ template "menu-main.tpl.html" . }} {{ template "alerts.tpl.html" . }}

Settings

Time Zone, which you are located in. Relevant for displaying daily statistics.
Optional in general, but required for weekly reports and for resetting your password.
{{ if .User.Email }}
Opt in to receive a summary of your coding activity once a week.
{{ end }}

Enter your old password for verification.
Choose a new password. Preferably, it is at least 8 characters long and contains letters, digits and special chars.
Once again ...
Aliases

You can specify aliases for any type of entity. For instance, you can define a rule, that both "myapp-frontend" and "myapp-backend" are combined under a project called "myapp".

{{ if .Aliases }}

Rules

{{ range $i, $alias := .Aliases }}
▸  All {{ $alias.Type | typeName }}s named {{ range $j, $value := $alias.Values }} {{- $value -}} {{ if lt $j (add (len $alias.Values) -2) }} {{- ", " | capitalize -}} {{ else if lt $j (add (len $alias.Values) -1) }} {{- "or" -}} {{ end }} {{ end }} are mapped to {{ $alias.Type | typeName }} {{ $alias.Key }}
{{end}}
{{end}}

Add Rule

Map named to

Project Labels

You can assign labels (aka. tags) to projects to group them together, e.g. by "private" and "work".

{{ if .Labels }}

Labels

{{ range $i, $label := .Labels }}
▸  {{ $label.Key }}: {{ range $j, $value := $label.Values }}
{{- $value -}}
{{ if lt $j (add (len $label.Values) -1) }} {{- ", " | capitalize -}} {{ end }} {{ end }}
{{end}}
{{ if .Projects }}

Add Label

{{ else }}
You don't have any projects, yet. Start out by sending a few heartbeats before you can then assign labels.
{{ end }}
{{end}}

Language Mappings

You can specify custom mapping from file extensions to programming languages, for instance a ".jsx" file could be mapped to the "React" language.

{{ if .LanguageMappings }}

Rules

{{ range $i, $mapping := .LanguageMappings }}
▸  When filename ends in {{ $mapping.Extension }} then change the language to {{ $mapping.Language }}
{{end}}
{{end}}

Add Rule

When filename ends in change language to
Aliases

Some features require public access to your data without authentication. This mainly includes badges ("shields" endpoint) and the integration with GitHub Readme Stats ("stats" endpoint). You can choose which data to share publicly through these endpoints.

(in days; 0 = not public, -1 = unlimited)
{{ $placeholderText := "WakaTime API key" }} {{ if .User.WakatimeApiKey }} {{ $placeholderText = "********" }} {{ end }}
You can connect Wakapi with the official WakaTime in a way that all heartbeats sent to Wakapi are relayed. This way, you can use both services at the same time. To get started, get your API key and paste it here.

Please note: When enabling this feature, the operators of this server will, in theory, have unlimited access to your data stored in WakaTime. If you are concerned about your privacy, please do not enable this integration or wait for OAuth 2 authentication (#94) to be implemented.
{{ if not .User.WakatimeApiKey }} {{ else }} {{ end }}

The integration with Shields.IO allows to generate badges for README pages or forums. To enable this feature, you need to grant public, unauthorized access to the respective endpoints. See Permissions.

Only available on public instances, not on localhost.
{{ if ne .User.ShareDataMaxDays 0 }}
Shields.io badge
Shields.io badge
{{ end }}

Wakapi intregrates with GitHub Readme Stats to generate fancy cards for you. To enable this feature, you need to grant public, unauthorized access to the respective endpoints. See Permissions.

Only available on public instances, not on localhost.
{{ if ne .User.ShareDataMaxDays 0 }}
Readme Stats Card
{{ end }}
Regenerate Summaries Regenerate all pre-computed summaries from raw heartbeat data. This may be useful if, for some reason, summaries are faulty or preconditions have change (e.g. you modified language mappings retrospectively). This may take some time. Be careful and only run this action if you know, what your are doing, as data loss might occur.
Reset API Key Please note that resetting your API key requires you to update your .wakatime.cfg files on all of your computers to make the WakaTime client send heartbeats again.
Delete Account Deleting your account will cause all data, including all your heartbeats, to be erased from the server immediately. This action is irreversible. Be careful!
{{ template "footer.tpl.html" . }} {{ template "foot.tpl.html" . }}