• Stars
    star
    116
  • Rank 303,894 (Top 6 %)
  • Language
    C#
  • License
    MIT License
  • Created over 6 years ago
  • Updated over 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

WakaTime plugin for Unity ⏱

unity-wakatime

A WakaTime plugin for Unity.

Screenshot

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 (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:

    "com.vladfaust.unitywakatime": "https://github.com/vladfaust/unity-wakatime.git#package"

    Make sure it's still a valid JSON file. For example:

    {
        "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:

    "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

More Repositories

1

crystalworld

RealWorld back-end API implementation πŸ‘
Crystal
43
star
2

migrate.cr

A database migration solution 🚜
Crystal
31
star
3

i18n.cr

Internationalization shard 🌍
Crystal
24
star
4

jbuilder-json_api

Jbuilder meets jsonapi.org specifications
Ruby
23
star
5

http-multiserver.cr

Mount multiple web applications 🚦
Crystal
23
star
6

http-params-serializable

The HTTP params parsing module for Crystal πŸ€“
Crystal
20
star
7

tarantool.cr

The Tarantool driver (a.k.a. connector) πŸ•·
Crystal
19
star
8

mini_redis

A light-weight low-level Redis client for Crystal ♨️
Crystal
18
star
9

validations.cr

Validations module for Crystal βœ…
Crystal
13
star
10

tele.cr

A convenient Telegram Bot framework πŸ€–
Crystal
13
star
11

callbacks.cr

Expressive callbacks module for Crystal πŸš‰
Crystal
12
star
12

background

Fast background job processing
Crystal
11
star
13

stripe.cr

🚧 WIP 🚧 Stripe API wrapper πŸ’³
Crystal
7
star
14

onyx-http-deprecated

Deprecated Onyx module
Crystal
6
star
15

cake-bake

Bake Cakefile into native Crystal code 🍞
Crystal
5
star
16

time-span-humanize

Time::Span#humanize method
Crystal
5
star
17

crack

Alternative Crystal HTTP server implementation
Crystal
5
star
18

timer.cr

A versatile timer module ⏲
Crystal
4
star
19

realworld-benchmark

RealWorld Benchmark
Crystal
3
star
20

onyx-40-loc-distributed-chat

Distributed websocket chat in 40 lines of code
JavaScript
2
star
21

time_format.cr

Time spans formatting made simple ⌚️
Crystal
2
star
22

Expense-Manager-2

Java
1
star
23

tele-broadcast.cr

Broadcasting for Tele πŸ“’
Crystal
1
star
24

attribute_enum

Rails-like enums with ease
Ruby
1
star