Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/vladfaust/unity-wakatime
WakaTime plugin for Unity ⏱
https://github.com/vladfaust/unity-wakatime
unity unity3d wakatime
Last synced: about 2 months ago
JSON representation
WakaTime plugin for Unity ⏱
- Host: GitHub
- URL: https://github.com/vladfaust/unity-wakatime
- Owner: vladfaust
- License: mit
- Created: 2018-04-06T16:38:14.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2022-06-06T16:49:30.000Z (over 2 years ago)
- Last Synced: 2024-10-25T01:35:23.722Z (2 months ago)
- Topics: unity, unity3d, wakatime
- Language: C#
- Homepage:
- Size: 62.5 KB
- Stars: 120
- Watchers: 9
- Forks: 27
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# unity-wakatime
A [WakaTime](https://wakatime.com) plugin for [Unity](https://unity.com).
![Screenshot](https://user-images.githubusercontent.com/7955682/38732057-79cf45b4-3f25-11e8-958f-07ba5290caba.PNG)
## About
Existing solutions didn't work for me (https://github.com/bengsfort/WakaTime-Unity is obsolete and https://github.com/josec89/wakatime-unity requires Python), so I decided to implement my own variant.
## Installation using the Unity Package Manager (Unity 2018.1+)
The [Unity Package Manager](https://docs.unity3d.com/Packages/[email protected]/manual/index.html) (UPM) is a new method to manage external packages. It keeps package contents separate from your main project files.
1. Modify your project's `Packages/manifest.json` file adding this line:
```json
"com.vladfaust.unitywakatime": "https://github.com/vladfaust/unity-wakatime.git#package"
```Make sure it's still a valid JSON file. For example:
```json
{
"dependencies": {
"com.unity.ads": "2.0.8",
"com.vladfaust.unitywakatime": "https://github.com/vladfaust/unity-wakatime.git#package"
}
}
```2. To update the package you need to delete the package lock entry in the `lock` section in `Packages/manifest.json`. The entry to delete could look like this:
```json
"com.vladfaust.unitywakatime": {
"hash": "31fe84232fc9f9c6e9606dc9e5a285886a94f26b",
"revision": "package"
}
```## Installation (all other Unity versions)
If you don't use the Unity Package Manager, you may copy the `Editor` folder from inside `Assets/com.vladfaust.unitywakatime` into your project's `Assets` folder.
## Setup
1. Run the Unity editor, go to `Window/WakaTime`, and insert your API key (grab one from https://wakatime.com/settings/account)
2. Press `Save Preferences`
3. Check if `"Unity"` editor appears at https://wakatime.com/api/v1/users/current/user_agents (may be a bit delayed)
4. Enjoy!## Usage
The plugin will automatically send heartbeats to WakaTime after following events:
* DidReloadScripts
* EditorApplication.playModeStateChanged
* EditorApplication.contextualPropertyMenu
* EditorApplication.hierarchyWindowChanged
* EditorSceneManager.sceneSaved
* EditorSceneManager.sceneOpened
* EditorSceneManager.sceneClosing
* EditorSceneManager.newSceneCreated## Development
Use the manual installation method, so the changes you make are immediately reflected in the editor.
But please keep the repository sane, omitting any unnecessary files.
When added a new file, move its `.meta` counterpart generated by Unity into the `/CI/Meta` folder.[![Become Patron](https://vladfaust.com/img/patreon-small.svg)](https://www.patreon.com/vladfaust)