)]}'
{
  "log": [
    {
      "commit": "1cf54318580c7255ec674b44d3516807a1226edc",
      "tree": "5a8904e721e48254d058efb393c95845e27ed837",
      "parents": [
        "e61d1bc738aab40ccafe98cc9376ca855de30da9"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Thu Sep 23 21:27:20 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Thu Sep 23 21:27:20 2021 +0400"
      },
      "message": "Maddy account management UI\n"
    },
    {
      "commit": "e61d1bc738aab40ccafe98cc9376ca855de30da9",
      "tree": "4b4e61bfb0cb4b3d14a65371687f2d69664a3bf0",
      "parents": [
        "565fcdcedf7b4d0e3fbdb87d14d4410a2026e0ce"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Thu Sep 23 18:36:51 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Thu Sep 23 18:36:51 2021 +0400"
      },
      "message": "pull maddy\n"
    },
    {
      "commit": "565fcdcedf7b4d0e3fbdb87d14d4410a2026e0ce",
      "tree": "5ad54313f8168746e2abc74ba29051c982bfba60",
      "parents": [
        "c40b13debda6f85b5ef7c3e65ae3bf200ae1c19e"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Thu Sep 23 18:34:30 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Thu Sep 23 18:34:30 2021 +0400"
      },
      "message": "maddy + nebula submodules\n"
    },
    {
      "commit": "c40b13debda6f85b5ef7c3e65ae3bf200ae1c19e",
      "tree": "bb3ad3118d1c2ab645f897ebaf753c4f86dc7cce",
      "parents": [
        "f1728875e55d16c3d997382fc8b0ed2dafb6c301"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Mon Aug 02 22:49:25 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Mon Aug 02 22:49:25 2021 +0400"
      },
      "message": "Move internal web services to use nginx-private ingress\n"
    },
    {
      "commit": "f1728875e55d16c3d997382fc8b0ed2dafb6c301",
      "tree": "666f55deb4c30e1398f25f270d9807e423bacd4e",
      "parents": [
        "2a088e2f2058e5bbc53ac8fa8a743f8342e46747",
        "97ee4217b7c1a210fffc0de68199884230a7b91e"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sun Aug 01 14:23:36 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sun Aug 01 14:23:36 2021 +0400"
      },
      "message": "Merge branch \u0027main\u0027 of github.com-giolekva:giolekva/pcloud into main\n"
    },
    {
      "commit": "2a088e2f2058e5bbc53ac8fa8a743f8342e46747",
      "tree": "666f55deb4c30e1398f25f270d9807e423bacd4e",
      "parents": [
        "ea7ac41f0463c0f2722ed2fb0a038b7bd2ba4eba"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sun Aug 01 14:20:25 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sun Aug 01 14:22:51 2021 +0400"
      },
      "message": "VPN: update to Tailscale v1.12.1\n"
    },
    {
      "commit": "97ee4217b7c1a210fffc0de68199884230a7b91e",
      "tree": "666f55deb4c30e1398f25f270d9807e423bacd4e",
      "parents": [
        "ea7ac41f0463c0f2722ed2fb0a038b7bd2ba4eba"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sun Aug 01 14:20:25 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sun Aug 01 14:20:25 2021 +0400"
      },
      "message": "VPN: update to Tailscale v1.12.1\n"
    },
    {
      "commit": "ea7ac41f0463c0f2722ed2fb0a038b7bd2ba4eba",
      "tree": "5d11f7c056e710f77dc176790c2ae75dc987e418",
      "parents": [
        "e19f76f72779441858d93a879a22527deb4b8986"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sun Aug 01 14:18:26 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sun Aug 01 14:18:26 2021 +0400"
      },
      "message": "Echo server\n"
    },
    {
      "commit": "e19f76f72779441858d93a879a22527deb4b8986",
      "tree": "48b184ab5483f7c940b1be98011ec59db8fe60f4",
      "parents": [
        "bcbaa0e2933812d04010efb6497a952e03c8c5a6"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sat Jul 31 18:01:23 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sat Jul 31 18:01:23 2021 +0400"
      },
      "message": "maddy remove debug mode\n"
    },
    {
      "commit": "bcbaa0e2933812d04010efb6497a952e03c8c5a6",
      "tree": "55f2588ac9cc977c7c0033a74e2419a7fdf527bc",
      "parents": [
        "2f73280b49317d71cc0051dcaabc6d9c760078d6"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sat Jul 31 17:59:15 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sat Jul 31 17:59:15 2021 +0400"
      },
      "message": "Private vaultwarden server\n"
    },
    {
      "commit": "2f73280b49317d71cc0051dcaabc6d9c760078d6",
      "tree": "258e7861d3c52d37cc2263f8806045d59925317a",
      "parents": [
        "eb3b6a833d328692f2d4743844b6a144410c10d1"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sat Jul 31 17:51:58 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sat Jul 31 17:51:58 2021 +0400"
      },
      "message": "maddy config for lekva.me\n"
    },
    {
      "commit": "eb3b6a833d328692f2d4743844b6a144410c10d1",
      "tree": "69ed5eb7cf947fe2693174df6254e1244586a98c",
      "parents": [
        "24f6405c20fece3df291cb036fdc7a6e2f5bc4ec"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sat Jul 31 17:49:24 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sat Jul 31 17:49:24 2021 +0400"
      },
      "message": "Add private Nginx for internal ingress + private root CA\n"
    },
    {
      "commit": "24f6405c20fece3df291cb036fdc7a6e2f5bc4ec",
      "tree": "af8e63ffb942972a4f30cedc20d31690486e1d79",
      "parents": [
        "415c276df4c21badc8e50bfae9fd27d09f686604"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Mon Jul 26 16:09:43 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Mon Jul 26 16:09:43 2021 +0400"
      },
      "message": "maddy\n"
    },
    {
      "commit": "415c276df4c21badc8e50bfae9fd27d09f686604",
      "tree": "16e0c2f940dd5d10297df1662eb348b32b8d67ff",
      "parents": [
        "49a480f85f6816e2fbebd908be64821fb8642c30"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Fri Jul 23 23:42:58 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Fri Jul 23 23:42:58 2021 +0400"
      },
      "message": "homelab k3s bootstrap\n"
    },
    {
      "commit": "49a480f85f6816e2fbebd908be64821fb8642c30",
      "tree": "6ae5f9e547167af12db73def4a7591d24cd52429",
      "parents": [
        "eea069c119949de836066574947477d554d25479"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Fri Jul 23 23:41:11 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Fri Jul 23 23:41:11 2021 +0400"
      },
      "message": "add maddy module\n"
    },
    {
      "commit": "eea069c119949de836066574947477d554d25479",
      "tree": "8f15067ba8cea84f690e1cfff659b79a93e9ef87",
      "parents": [
        "ea3347e2e26dbe1283434dc21c947d65c8c86e58"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Mon Jul 19 18:13:08 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Mon Jul 19 18:13:08 2021 +0400"
      },
      "message": "cert-manager + metallb configs\n"
    },
    {
      "commit": "ea3347e2e26dbe1283434dc21c947d65c8c86e58",
      "tree": "045948450dc8f446ea2c00de027a4e8c880dfa10",
      "parents": [
        "28a1fc88c28c7945261146dc5656795b3aefe8f1"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Mon Jul 19 18:12:41 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Mon Jul 19 18:12:41 2021 +0400"
      },
      "message": "gitignore\n"
    },
    {
      "commit": "28a1fc88c28c7945261146dc5656795b3aefe8f1",
      "tree": "684ae4dde0fb1fc26e77c4913e1ad2f7cd536c77",
      "parents": [
        "d1c0b9074b9b2433655aaeb1e9dd5521fd828c92"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Mon Jul 19 18:01:11 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Mon Jul 19 18:01:11 2021 +0400"
      },
      "message": "cron to monitor and restart pcloud nodes\n"
    },
    {
      "commit": "d1c0b9074b9b2433655aaeb1e9dd5521fd828c92",
      "tree": "52c31c283185090a0e56fc6d4d827d75ea05f8bc",
      "parents": [
        "d9725369f7136bcf11a6c28a0098e19e8078fdb7"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Mon Jul 19 17:57:54 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Mon Jul 19 17:57:54 2021 +0400"
      },
      "message": "hdd + OS preparation\n"
    },
    {
      "commit": "d9725369f7136bcf11a6c28a0098e19e8078fdb7",
      "tree": "e7fb91cffbb9133d472db19543d925767f835731",
      "parents": [
        "09a4a67e5eb3aba12117080fd880ed546fde94b3"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Wed Jul 14 21:03:11 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Wed Jul 14 21:03:11 2021 +0400"
      },
      "message": "rpuppy: update build and installation configs\n"
    },
    {
      "commit": "09a4a67e5eb3aba12117080fd880ed546fde94b3",
      "tree": "563909317be09ec3ff31e2b0a6c26a3f8aecbfe3",
      "parents": [
        "1058aad336f410fdd19bcf0f57622c57bdc876b6",
        "5194717ba48a4dadcef8b37f3025460ba05f5d5c"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "giolekva@gmail.com",
        "time": "Sun Jun 20 14:42:08 2021 +0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jun 20 14:42:08 2021 +0400"
      },
      "message": "Merge pull request #57 from LukeSamkharadze/patch-1\n\ndocs(readme): fix grammatical \u0026 spelling issues 🎂 🎂"
    },
    {
      "commit": "1058aad336f410fdd19bcf0f57622c57bdc876b6",
      "tree": "5f2a82b8fa9206b24b0e4cd565943bf3f36f972c",
      "parents": [
        "720e2646bfd50e4b3e3977ca3adabbbfabb9a3ad",
        "351ac1c41cbb0829ea76a3550cf9b6e379032f41"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "giolekva@gmail.com",
        "time": "Sun Jun 20 14:40:10 2021 +0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jun 20 14:40:10 2021 +0400"
      },
      "message": "Merge pull request #58 from giolekva/vpn-group\n\nmerge vpn-group with main"
    },
    {
      "commit": "351ac1c41cbb0829ea76a3550cf9b6e379032f41",
      "tree": "5f2a82b8fa9206b24b0e4cd565943bf3f36f972c",
      "parents": [
        "02015765e648d10fb9531af4c0c81513d3ae49cf",
        "720e2646bfd50e4b3e3977ca3adabbbfabb9a3ad"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sun Jun 20 14:39:02 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sun Jun 20 14:39:02 2021 +0400"
      },
      "message": "Merge branch \u0027main\u0027 of github.com-giolekva:giolekva/pcloud into vpn-group\n"
    },
    {
      "commit": "02015765e648d10fb9531af4c0c81513d3ae49cf",
      "tree": "5f2a82b8fa9206b24b0e4cd565943bf3f36f972c",
      "parents": [
        "f286004ea6a7e601db94090cadce134f3a91de93"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sun Jun 20 14:38:28 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sun Jun 20 14:38:28 2021 +0400"
      },
      "message": "handle errors\n"
    },
    {
      "commit": "720e2646bfd50e4b3e3977ca3adabbbfabb9a3ad",
      "tree": "6e0aacd777dd0b21ca6f4515d6c6bcee21edbe47",
      "parents": [
        "6e510fc105b6e3aabb2f657ec98ec8a8120831b0",
        "f286004ea6a7e601db94090cadce134f3a91de93"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "giolekva@gmail.com",
        "time": "Sun Jun 20 14:37:30 2021 +0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jun 20 14:37:30 2021 +0400"
      },
      "message": "Merge pull request #56 from giolekva/vpn-group\n\nIntroduces concept of network device groups"
    },
    {
      "commit": "f286004ea6a7e601db94090cadce134f3a91de93",
      "tree": "6e0aacd777dd0b21ca6f4515d6c6bcee21edbe47",
      "parents": [
        "a748ff9c2405f52ec70e279523e209904e352fb8",
        "6e510fc105b6e3aabb2f657ec98ec8a8120831b0"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sun Jun 20 14:37:04 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sun Jun 20 14:37:04 2021 +0400"
      },
      "message": "merge\n"
    },
    {
      "commit": "6e510fc105b6e3aabb2f657ec98ec8a8120831b0",
      "tree": "0ef85e2fb0b8ac3bdafd26ca470176f0babe309a",
      "parents": [
        "f0d86b113d29ebeb4cb95ce8c405a5b5d21d2452",
        "c2825e2d6f4ada7799bbae5afdf69c6fc2c58ca1"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "giolekva@gmail.com",
        "time": "Sun Jun 20 14:27:52 2021 +0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jun 20 14:27:52 2021 +0400"
      },
      "message": "Merge pull request #53 from giolekva/vpn\n\nBasic in memory implementation of network Manager"
    },
    {
      "commit": "5194717ba48a4dadcef8b37f3025460ba05f5d5c",
      "tree": "fe4f71cd624dd06ccbae8e427c89decab3f9ef5c",
      "parents": [
        "f0d86b113d29ebeb4cb95ce8c405a5b5d21d2452"
      ],
      "author": {
        "name": "Luka Samkharadze",
        "email": "lukesamkharadze@gmail.com",
        "time": "Mon Jun 14 17:10:49 2021 +0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 14 17:10:49 2021 +0400"
      },
      "message": "docs(readme): fix grammatical \u0026 spelling issues 🎂 🎂 \n\n🥳 🎉 🎉"
    },
    {
      "commit": "c2825e2d6f4ada7799bbae5afdf69c6fc2c58ca1",
      "tree": "555e50d5af3ef3a9045395f35c9b4be503fdeaaf",
      "parents": [
        "001770e8e0a194439c211d03253660a928de8060",
        "93c6aa53cbc93ae3f9d57ac048af8df515d768b8"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Fri May 14 21:58:28 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Fri May 14 21:58:28 2021 +0400"
      },
      "message": "Merge branch \u0027vpn\u0027 of github.com-giolekva:giolekva/pcloud into vpn\n"
    },
    {
      "commit": "001770e8e0a194439c211d03253660a928de8060",
      "tree": "9816c2a663e7e002ff011c5f9e2ac181bb0d3456",
      "parents": [
        "4c6114a7b5c126a2ed0b2bb7010105c2f0f0a9e7"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Fri May 14 21:57:17 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Fri May 14 21:57:17 2021 +0400"
      },
      "message": "Improve error reporting\n"
    },
    {
      "commit": "93c6aa53cbc93ae3f9d57ac048af8df515d768b8",
      "tree": "e701e4d3d08b01e38ee8232fa4706c4cfb2676eb",
      "parents": [
        "4c6114a7b5c126a2ed0b2bb7010105c2f0f0a9e7"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "giolekva@gmail.com",
        "time": "Sun May 09 12:59:09 2021 +0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun May 09 12:59:09 2021 +0400"
      },
      "message": "s/give/a given/\n\nCo-authored-by: Shota Gvinepadze \u003cwineson@gmail.com\u003e"
    },
    {
      "commit": "f0d86b113d29ebeb4cb95ce8c405a5b5d21d2452",
      "tree": "1a4b96e0998d26cea181c741ca4129ac6325d902",
      "parents": [
        "d54adfa95101f07b7a5c0503fa9c06a2292f28ab",
        "284afce8afd2aa0aff4ff0eb5de4ce3f9f780e62"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "giolekva@gmail.com",
        "time": "Sun May 09 12:33:21 2021 +0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun May 09 12:33:21 2021 +0400"
      },
      "message": "Merge pull request #55 from giolekva/bazel\n\n"
    },
    {
      "commit": "a748ff9c2405f52ec70e279523e209904e352fb8",
      "tree": "2220e605b24843281679d800834b9d9c20c0f96b",
      "parents": [
        "c643949e5a47087554ee22a4123e061d244879d5"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sun May 02 22:00:34 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sun May 02 22:00:34 2021 +0400"
      },
      "message": "Fix Manager.RegisterDevice return type\n"
    },
    {
      "commit": "c643949e5a47087554ee22a4123e061d244879d5",
      "tree": "728a9259e52ba5b683dc3315ea69d83f97a58a28",
      "parents": [
        "66e2efa759069448c5848d48846dfbfbb18c8045",
        "4c6114a7b5c126a2ed0b2bb7010105c2f0f0a9e7"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sun May 02 20:49:39 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sun May 02 20:49:39 2021 +0400"
      },
      "message": "merge with vpn branch which fixes RegisterDevice method signature\n"
    },
    {
      "commit": "4c6114a7b5c126a2ed0b2bb7010105c2f0f0a9e7",
      "tree": "011f3a5aacc61f50cdb1257c9091dbd2a5c7bfad",
      "parents": [
        "d12813b75bc24650a02cb6f374223a9f4e1f1ab6"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sun May 02 20:46:57 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sun May 02 20:46:57 2021 +0400"
      },
      "message": "Fix RegisterDevice signature\n"
    },
    {
      "commit": "284afce8afd2aa0aff4ff0eb5de4ce3f9f780e62",
      "tree": "9e6534918665299bbfeecdd80e7089d32925f83e",
      "parents": [
        "9a6b863bcd2344baa2abc5d93e65ced3481fc5d7"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sun May 02 14:49:17 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sun May 02 14:49:17 2021 +0400"
      },
      "message": "Remove BUILD files\n"
    },
    {
      "commit": "9a6b863bcd2344baa2abc5d93e65ced3481fc5d7",
      "tree": "702b665de02757783ca108151ac6b192bbf72e2c",
      "parents": [
        "a11e760201b458ba16b1962b1bcd2dedc1f93260"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sun May 02 14:45:00 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sun May 02 14:45:00 2021 +0400"
      },
      "message": "Remove bazel_tools\n"
    },
    {
      "commit": "66e2efa759069448c5848d48846dfbfbb18c8045",
      "tree": "b7a936c748d4a478f05d96eb45fd68210036e7b8",
      "parents": [
        "d12813b75bc24650a02cb6f374223a9f4e1f1ab6"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sat May 01 23:58:58 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sat May 01 23:58:58 2021 +0400"
      },
      "message": "Introduce notion of device groups\n"
    },
    {
      "commit": "d12813b75bc24650a02cb6f374223a9f4e1f1ab6",
      "tree": "82c4df4cf6f62d7f498cfadbcb68cea974d0d2d4",
      "parents": [
        "d54adfa95101f07b7a5c0503fa9c06a2292f28ab"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sat May 01 19:58:44 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sat May 01 19:58:44 2021 +0400"
      },
      "message": "Basic in memory implementation of network Manager\n"
    },
    {
      "commit": "d54adfa95101f07b7a5c0503fa9c06a2292f28ab",
      "tree": "55b977478a95389c8171fbf0ee5da1e26e82ea93",
      "parents": [
        "0ceb2cf0e74a28d6d75ee0c262f15770a310e9ce",
        "493dd48d28a16bf5abd11f0ab55a1020764f994f"
      ],
      "author": {
        "name": "Shota Gvinepadze",
        "email": "wineson@gmail.com",
        "time": "Thu Apr 15 00:42:26 2021 +0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Apr 15 00:42:26 2021 +0400"
      },
      "message": "Merge pull request #50 from giolekva/rest_user_service\n\nAdd rest router"
    },
    {
      "commit": "493dd48d28a16bf5abd11f0ab55a1020764f994f",
      "tree": "8d6bc2b3bf04baedd4d060ff9f6bb74898ae4b62",
      "parents": [
        "8e28a6a3809c592b3d4fd7fb6ac29e9d1eb608ef"
      ],
      "author": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Fri Apr 02 00:07:51 2021 +0400"
      },
      "committer": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Fri Apr 02 00:07:51 2021 +0400"
      },
      "message": "Move password hashing in handler\n"
    },
    {
      "commit": "0ceb2cf0e74a28d6d75ee0c262f15770a310e9ce",
      "tree": "a3dd7b65b93c4435381e990dd5b627c9523ec090",
      "parents": [
        "52faff5c7c6a90be6237dc5aadeb0c9f9f22f79d",
        "ad66e52e3cc41033c65aa0256ede092677bf335f"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "giolekva@gmail.com",
        "time": "Thu Apr 01 11:47:48 2021 +0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Apr 01 11:47:48 2021 +0400"
      },
      "message": "Merge pull request #48 from giolekva/rm-bazel\n\nRemove Bazel build files"
    },
    {
      "commit": "52faff5c7c6a90be6237dc5aadeb0c9f9f22f79d",
      "tree": "bad7a95318d6f6d1e19a83ef44c95bcac0147a75",
      "parents": [
        "a946a605a74c28c865d7d5d76ac51c62fcd8d168",
        "838bd5cf3eeff5b7149d58240b0989a98d140305"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "giolekva@gmail.com",
        "time": "Thu Apr 01 11:47:28 2021 +0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Apr 01 11:47:28 2021 +0400"
      },
      "message": "Merge pull request #49 from giolekva/makefile-linter\n\nAdd linter"
    },
    {
      "commit": "8e28a6a3809c592b3d4fd7fb6ac29e9d1eb608ef",
      "tree": "13054106b0be43440bbe78707ce54389ea6b365f",
      "parents": [
        "5c377be486cb6749a1c3a1bcbc939a087a1eac81"
      ],
      "author": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Mon Mar 29 00:42:47 2021 +0400"
      },
      "committer": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Mon Mar 29 00:42:47 2021 +0400"
      },
      "message": "Add logger middleware\n"
    },
    {
      "commit": "5c377be486cb6749a1c3a1bcbc939a087a1eac81",
      "tree": "cda266074b3c3e2eafa524a52bbc9c6e0a167f2e",
      "parents": [
        "352127d8f9731dd37244efbb369e7fdd5102f37e"
      ],
      "author": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Fri Mar 26 20:39:28 2021 +0400"
      },
      "committer": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Fri Mar 26 20:39:28 2021 +0400"
      },
      "message": "Add get users rest endpoint\n"
    },
    {
      "commit": "352127d8f9731dd37244efbb369e7fdd5102f37e",
      "tree": "f4730932eb71b0b5185a13b62d311da3827f9628",
      "parents": [
        "a19d479840b9171d065345e39b3542a2ee5bc184"
      ],
      "author": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Fri Mar 26 20:10:32 2021 +0400"
      },
      "committer": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Fri Mar 26 20:10:32 2021 +0400"
      },
      "message": "Add create user rest endpoint\n"
    },
    {
      "commit": "a19d479840b9171d065345e39b3542a2ee5bc184",
      "tree": "91c92542d621628c788fb2290b18c0c8469ee6ad",
      "parents": [
        "5e0dc119c8ec2f002854f188f5fbc359836e2eea"
      ],
      "author": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Fri Mar 26 00:27:25 2021 +0400"
      },
      "committer": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Fri Mar 26 00:27:25 2021 +0400"
      },
      "message": "Add get user resp api endpoint\n"
    },
    {
      "commit": "5e0dc119c8ec2f002854f188f5fbc359836e2eea",
      "tree": "031327177a5bc7807b20638d08c519728e7cc54b",
      "parents": [
        "a946a605a74c28c865d7d5d76ac51c62fcd8d168"
      ],
      "author": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Thu Mar 25 20:49:55 2021 +0400"
      },
      "committer": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Thu Mar 25 20:49:55 2021 +0400"
      },
      "message": "Add rest router\n"
    },
    {
      "commit": "838bd5cf3eeff5b7149d58240b0989a98d140305",
      "tree": "bad7a95318d6f6d1e19a83ef44c95bcac0147a75",
      "parents": [
        "a946a605a74c28c865d7d5d76ac51c62fcd8d168"
      ],
      "author": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Sun Mar 21 15:37:03 2021 +0400"
      },
      "committer": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Sun Mar 21 15:37:03 2021 +0400"
      },
      "message": "Add linter\n"
    },
    {
      "commit": "a946a605a74c28c865d7d5d76ac51c62fcd8d168",
      "tree": "c3707ad5e506107e5e65bdec77011095e0bd4c3c",
      "parents": [
        "a11e760201b458ba16b1962b1bcd2dedc1f93260",
        "8fbe4a9ab3192eb0d24f77b4793f7b13896666fd"
      ],
      "author": {
        "name": "Shota Gvinepadze",
        "email": "wineson@gmail.com",
        "time": "Sat Mar 20 23:42:03 2021 +0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Mar 20 23:42:03 2021 +0400"
      },
      "message": "Merge pull request #45 from giolekva/rpc_user_service\n\ngRPC user service"
    },
    {
      "commit": "8fbe4a9ab3192eb0d24f77b4793f7b13896666fd",
      "tree": "5ffd06d1a783072944e13713a59fedb86d0cd257",
      "parents": [
        "3b0b951a4556cdfef0e34129ae875d354cf91361"
      ],
      "author": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Sat Mar 20 23:41:52 2021 +0400"
      },
      "committer": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Sat Mar 20 23:41:52 2021 +0400"
      },
      "message": "Remove empty line\n"
    },
    {
      "commit": "ad66e52e3cc41033c65aa0256ede092677bf335f",
      "tree": "2640b74af5f87ad8c82fe00f76a3fe37cc629d81",
      "parents": [
        "a11e760201b458ba16b1962b1bcd2dedc1f93260"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Mon Mar 15 20:55:37 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Mon Mar 15 20:55:37 2021 +0400"
      },
      "message": "rm Bazel\n"
    },
    {
      "commit": "a11e760201b458ba16b1962b1bcd2dedc1f93260",
      "tree": "e5b5cda931b805bd8e902559d7b8642f2d7145a1",
      "parents": [
        "0dc6d3218db782f759a60de5a5d7500effef4c23",
        "98a695debba0927808c7c10c1c56e4cfb4a83701"
      ],
      "author": {
        "name": "Shota Gvinepadze",
        "email": "wineson@gmail.com",
        "time": "Mon Mar 15 17:29:48 2021 +0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Mar 15 17:29:48 2021 +0400"
      },
      "message": "Merge pull request #46 from giolekva/vpn\n\nEngine interface with Wireguard specific implementation."
    },
    {
      "commit": "98a695debba0927808c7c10c1c56e4cfb4a83701",
      "tree": "e5b5cda931b805bd8e902559d7b8642f2d7145a1",
      "parents": [
        "3c0e182823aae297f0e1737473cb7683dca53b50"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Mon Mar 15 12:43:20 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Mon Mar 15 12:43:20 2021 +0400"
      },
      "message": "Remove debug Println and improve local node naming\n"
    },
    {
      "commit": "3b0b951a4556cdfef0e34129ae875d354cf91361",
      "tree": "e7dfe3d3a3603b325f28a9317152fd4d6ea4e4e2",
      "parents": [
        "cf79560f2cc4d872011195f44528afd57181404f"
      ],
      "author": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Mon Mar 15 00:13:06 2021 +0400"
      },
      "committer": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Mon Mar 15 00:13:06 2021 +0400"
      },
      "message": "Switch to common interfacaes\n"
    },
    {
      "commit": "3c0e182823aae297f0e1737473cb7683dca53b50",
      "tree": "4fb71827b2d21858190360dd1bd64ceec37858fd",
      "parents": [
        "0dc6d3218db782f759a60de5a5d7500effef4c23"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Mon Mar 15 00:08:44 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Mon Mar 15 00:08:44 2021 +0400"
      },
      "message": "Engine interface with Wireguard specific implementation.\n"
    },
    {
      "commit": "0dc6d3218db782f759a60de5a5d7500effef4c23",
      "tree": "f8aaad18886b77233ca788286ce911ae46c88677",
      "parents": [
        "650caf983156836302a20eed7c13f8077a8053c3"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Tue Mar 09 22:56:08 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Tue Mar 09 22:56:08 2021 +0400"
      },
      "message": "fix hostname\n"
    },
    {
      "commit": "cf79560f2cc4d872011195f44528afd57181404f",
      "tree": "1369ce9745e72c0eb563dbcbb14fcc4f8dcdf5ff",
      "parents": [
        "6c26421feddc59998eb6dd55e3562c7a56d78f14"
      ],
      "author": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Sun Mar 07 23:14:15 2021 +0400"
      },
      "committer": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Sun Mar 07 23:16:58 2021 +0400"
      },
      "message": "Add e2e test\n"
    },
    {
      "commit": "6c26421feddc59998eb6dd55e3562c7a56d78f14",
      "tree": "150c22efa4a579f784d2579adda8d24928f04237",
      "parents": [
        "07334d264127a6d54fc097d50ce787eab3a2fee7"
      ],
      "author": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Sun Mar 07 17:54:04 2021 +0400"
      },
      "committer": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Sun Mar 07 17:54:04 2021 +0400"
      },
      "message": "Address review suggestions\n"
    },
    {
      "commit": "07334d264127a6d54fc097d50ce787eab3a2fee7",
      "tree": "e39c76983124d80ba1ce68dd4c5b81019488be34",
      "parents": [
        "3e1576e8ef86f17ad87e4fcdc7d1323a8dc99c14"
      ],
      "author": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Wed Feb 24 01:08:40 2021 +0400"
      },
      "committer": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Wed Feb 24 01:08:40 2021 +0400"
      },
      "message": "Add memory store\n"
    },
    {
      "commit": "3e1576e8ef86f17ad87e4fcdc7d1323a8dc99c14",
      "tree": "1432a6afa9ebc40a42104d1b99d9a7562184de1f",
      "parents": [
        "650caf983156836302a20eed7c13f8077a8053c3"
      ],
      "author": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Tue Feb 23 01:27:56 2021 +0400"
      },
      "committer": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Tue Feb 23 01:27:56 2021 +0400"
      },
      "message": "Add gRPC user service\n"
    },
    {
      "commit": "650caf983156836302a20eed7c13f8077a8053c3",
      "tree": "9421e4753ed73e3b8d4a12522adc608b4dbc8049",
      "parents": [
        "3bc0b9a6195d8d03a7915477cd589892555cc8b0",
        "c0479a64e888eae438929011a9ec46456a37602c"
      ],
      "author": {
        "name": "Shota Gvinepadze",
        "email": "wineson@gmail.com",
        "time": "Mon Feb 22 20:09:06 2021 +0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Feb 22 20:09:06 2021 +0400"
      },
      "message": "Merge pull request #44 from giolekva/server_handling\n\nMultiple server support"
    },
    {
      "commit": "c0479a64e888eae438929011a9ec46456a37602c",
      "tree": "9421e4753ed73e3b8d4a12522adc608b4dbc8049",
      "parents": [
        "b892d07418064b0d728f4450062a7e7089652ca5"
      ],
      "author": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Mon Feb 22 20:08:36 2021 +0400"
      },
      "committer": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Mon Feb 22 20:08:36 2021 +0400"
      },
      "message": "Apply review suggestions\n"
    },
    {
      "commit": "b892d07418064b0d728f4450062a7e7089652ca5",
      "tree": "7b16428e68b3826ae063bad43c723edd6e65c856",
      "parents": [
        "db170e12494fa27adc74c8dd99621ae0c89d66f9"
      ],
      "author": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Mon Feb 22 00:23:16 2021 +0400"
      },
      "committer": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Mon Feb 22 00:23:16 2021 +0400"
      },
      "message": "Add http server\n"
    },
    {
      "commit": "db170e12494fa27adc74c8dd99621ae0c89d66f9",
      "tree": "4d2f5c5f56a02d69173ccf096e32d3bdf9a2eac0",
      "parents": [
        "3bc0b9a6195d8d03a7915477cd589892555cc8b0"
      ],
      "author": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Sun Feb 21 23:06:20 2021 +0400"
      },
      "committer": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Sun Feb 21 23:06:20 2021 +0400"
      },
      "message": "Add ability to have several servers\n"
    },
    {
      "commit": "3bc0b9a6195d8d03a7915477cd589892555cc8b0",
      "tree": "ca1b95f4316800086330419a9ba3f912e6e8dd81",
      "parents": [
        "40d949bf2f8834a74f5cba2f3a54e7d8ad7f920d",
        "755669a6dcbc299fea06a38626d0c4aa3cdb4042"
      ],
      "author": {
        "name": "Shota Gvinepadze",
        "email": "wineson@gmail.com",
        "time": "Sun Feb 21 21:29:34 2021 +0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Feb 21 21:29:34 2021 +0400"
      },
      "message": "Merge pull request #41 from giolekva/initial_sqlstore\n\nAdd initial implementation of the UserStore"
    },
    {
      "commit": "755669a6dcbc299fea06a38626d0c4aa3cdb4042",
      "tree": "dcfeaecd93fafb62552573c4108c6a15d558aef1",
      "parents": [
        "6e8feb7903d1772eec0a12bb5fa24eb46fb67328",
        "d32f9ee002e7d9def962591da75760bacb72c75e"
      ],
      "author": {
        "name": "Shota Gvinepadze",
        "email": "wineson@gmail.com",
        "time": "Sun Feb 21 21:29:06 2021 +0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Feb 21 21:29:06 2021 +0400"
      },
      "message": "Merge pull request #42 from giolekva/dummy_server\n\nAdd dummy server"
    },
    {
      "commit": "d32f9ee002e7d9def962591da75760bacb72c75e",
      "tree": "dcfeaecd93fafb62552573c4108c6a15d558aef1",
      "parents": [
        "90c6a3bb26cad7a4b27a8f0d17b3102435a5f18f"
      ],
      "author": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Sun Feb 21 21:28:50 2021 +0400"
      },
      "committer": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Sun Feb 21 21:28:50 2021 +0400"
      },
      "message": "Review suggestions\n"
    },
    {
      "commit": "40d949bf2f8834a74f5cba2f3a54e7d8ad7f920d",
      "tree": "bd7634c59026defa408148007bc198d58f89506c",
      "parents": [
        "9c71a6417d6a917097443eb679b7ac01277e4506",
        "2f4612752301244e1cf564dc5e28fe252f2a2b6f"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "giolekva@gmail.com",
        "time": "Fri Feb 19 20:17:01 2021 +0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Feb 19 20:17:01 2021 +0400"
      },
      "message": "Merge pull request #43 from giolekva/bootstrap\n\nDesign doc: Bootstrap with VPN"
    },
    {
      "commit": "2f4612752301244e1cf564dc5e28fe252f2a2b6f",
      "tree": "b21e5b4bf9a328ec7cd020fb01fc3beca656a705",
      "parents": [
        "80f595d0e0a5757b0f48c9dad2f8fa95650f3fb4"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Fri Feb 19 19:22:31 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Fri Feb 19 19:22:31 2021 +0400"
      },
      "message": "Design doc: Bootstrap with VPN\n"
    },
    {
      "commit": "90c6a3bb26cad7a4b27a8f0d17b3102435a5f18f",
      "tree": "f91453d623accc01b85b5caecdb89e57befa1e75",
      "parents": [
        "c6abf5b240524178ff01e0dd96476d35ff9c3fb7",
        "6e8feb7903d1772eec0a12bb5fa24eb46fb67328"
      ],
      "author": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Fri Feb 19 15:13:03 2021 +0400"
      },
      "committer": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Fri Feb 19 15:13:03 2021 +0400"
      },
      "message": "Merge branch \u0027initial_sqlstore\u0027 into dummy_server\n"
    },
    {
      "commit": "6e8feb7903d1772eec0a12bb5fa24eb46fb67328",
      "tree": "93c72667c904326a2ee65378a9223076675fbe25",
      "parents": [
        "0e4c64645d0d88b0707f1a1f7c873387980a4836"
      ],
      "author": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Fri Feb 19 15:08:40 2021 +0400"
      },
      "committer": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Fri Feb 19 15:08:40 2021 +0400"
      },
      "message": "Get rid of email and names\n"
    },
    {
      "commit": "c6abf5b240524178ff01e0dd96476d35ff9c3fb7",
      "tree": "0b889f53dcf9a4f713c0673774afc15293083ed3",
      "parents": [
        "0e4c64645d0d88b0707f1a1f7c873387980a4836"
      ],
      "author": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Fri Feb 19 14:48:03 2021 +0400"
      },
      "committer": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Fri Feb 19 14:48:03 2021 +0400"
      },
      "message": "Add dummy server\n"
    },
    {
      "commit": "0e4c64645d0d88b0707f1a1f7c873387980a4836",
      "tree": "f85f98b5a169fc7388320fb9938466cb0c11ba70",
      "parents": [
        "48c837eba4f50c1fdd84e53cfd67e272099a4b0c"
      ],
      "author": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Fri Feb 19 01:21:12 2021 +0400"
      },
      "committer": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Fri Feb 19 01:21:12 2021 +0400"
      },
      "message": "do mod tidy\n"
    },
    {
      "commit": "48c837eba4f50c1fdd84e53cfd67e272099a4b0c",
      "tree": "a188511ec0df9bcdc07e826785c70d03d3d628ee",
      "parents": [
        "9c71a6417d6a917097443eb679b7ac01277e4506"
      ],
      "author": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Fri Feb 19 01:17:07 2021 +0400"
      },
      "committer": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Fri Feb 19 01:17:07 2021 +0400"
      },
      "message": "Add initial implementation of the UserStore\n"
    },
    {
      "commit": "9c71a6417d6a917097443eb679b7ac01277e4506",
      "tree": "01cccb04374df09e42e36f72455eecefe0efa7df",
      "parents": [
        "80f595d0e0a5757b0f48c9dad2f8fa95650f3fb4",
        "d85f91a96bcfaadd875c86410e42e8f0fed44bd9"
      ],
      "author": {
        "name": "Shota Gvinepadze",
        "email": "wineson@gmail.com",
        "time": "Thu Feb 18 21:26:11 2021 +0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Feb 18 21:26:11 2021 +0400"
      },
      "message": "Merge pull request #40 from giolekva/architecture_doc\n\nAdd Knowledge graph doc"
    },
    {
      "commit": "d85f91a96bcfaadd875c86410e42e8f0fed44bd9",
      "tree": "01cccb04374df09e42e36f72455eecefe0efa7df",
      "parents": [
        "80f595d0e0a5757b0f48c9dad2f8fa95650f3fb4"
      ],
      "author": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Thu Feb 18 21:00:12 2021 +0400"
      },
      "committer": {
        "name": "iomodo",
        "email": "wineson@gmail.com",
        "time": "Thu Feb 18 21:00:12 2021 +0400"
      },
      "message": "Add Knowledge graph doc\n"
    },
    {
      "commit": "80f595d0e0a5757b0f48c9dad2f8fa95650f3fb4",
      "tree": "7f21853ebf399c6fa2c6361ad96eba5b810c8e3c",
      "parents": [
        "4c990fa5bdbdc92c8ebc4790955b103f9256c83d"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Tue Feb 16 11:33:59 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Tue Feb 16 11:33:59 2021 +0400"
      },
      "message": "hardware provisioning scripts\n"
    },
    {
      "commit": "4c990fa5bdbdc92c8ebc4790955b103f9256c83d",
      "tree": "1601dcb6053b344fc46a80d64dd49abc5a0f88f5",
      "parents": [
        "e8b6a5313677c7a5dc43f6dff3d2988bbc8158b2"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Wed Jan 13 17:01:12 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Wed Jan 13 17:01:12 2021 +0400"
      },
      "message": "dev: support both bazel and bazelisk in install scripts. fix dgraph version\n"
    },
    {
      "commit": "e8b6a5313677c7a5dc43f6dff3d2988bbc8158b2",
      "tree": "b488f16e339dc86893d10eea5f02899800881afc",
      "parents": [
        "1c09e60e3a4d9d33cd4d2c2270b6f3a3076c3abb"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Wed Jan 13 16:59:03 2021 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Wed Jan 13 16:59:03 2021 +0400"
      },
      "message": "face_detection: retrieve only number of uploaded faces\n"
    },
    {
      "commit": "1c09e60e3a4d9d33cd4d2c2270b6f3a3076c3abb",
      "tree": "939569a95ac11bceca59163e93882034a58ce4a9",
      "parents": [
        "c32dd317bcd2ebff81c61a836952b5f3dc5de449"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "giolekva@gmail.com",
        "time": "Thu Dec 17 16:03:42 2020 +0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Dec 17 16:03:42 2020 +0400"
      },
      "message": "check_requirements: /bin/sh -\u003e /bin/bash"
    },
    {
      "commit": "c32dd317bcd2ebff81c61a836952b5f3dc5de449",
      "tree": "8c3745c1d70fe5cf7ca340bdd3340180dbc96d9b",
      "parents": [
        "e2fb973912d54c6944d9eaefc84611cc08fb452c"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Thu Dec 17 15:50:12 2020 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Thu Dec 17 15:50:35 2020 +0400"
      },
      "message": "Add check_requirements script checking all required dependencies #35\n"
    },
    {
      "commit": "e2fb973912d54c6944d9eaefc84611cc08fb452c",
      "tree": "0eb42feba818333272f5cde61f3cad60ac851daf",
      "parents": [
        "c85ecb8d5bc109ff29805a97965c3b89ee6e6966",
        "598bcb97ecc468d9ab72258dcab13e629e91166f"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "giolekva@gmail.com",
        "time": "Thu Dec 17 13:32:28 2020 +0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Dec 17 13:32:28 2020 +0400"
      },
      "message": "Merge pull request #34 from bakurits/master\n\ntools: change sh to bash in install_core_services.sh"
    },
    {
      "commit": "598bcb97ecc468d9ab72258dcab13e629e91166f",
      "tree": "0eb42feba818333272f5cde61f3cad60ac851daf",
      "parents": [
        "c85ecb8d5bc109ff29805a97965c3b89ee6e6966"
      ],
      "author": {
        "name": "bakurits",
        "email": "bakuricucxashvili@gmail.com",
        "time": "Thu Dec 17 12:17:34 2020 +0400"
      },
      "committer": {
        "name": "bakurits",
        "email": "bakuricucxashvili@gmail.com",
        "time": "Thu Dec 17 12:17:34 2020 +0400"
      },
      "message": "fix: change sh to bash\n"
    },
    {
      "commit": "c85ecb8d5bc109ff29805a97965c3b89ee6e6966",
      "tree": "8a445adaed8f358e1cde36edcd8da9b30e4eab59",
      "parents": [
        "a3a70bc5bbf9545544ee93a6a0eb811bf829ef90",
        "bc7ffa999d47f2b7363d12550891fca9698dbc40"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "giolekva@gmail.com",
        "time": "Wed Dec 16 21:30:36 2020 +0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Dec 16 21:30:36 2020 +0400"
      },
      "message": "Merge pull request #30 from bpavacic/patch-1\n\nFix the command to generate public key"
    },
    {
      "commit": "a3a70bc5bbf9545544ee93a6a0eb811bf829ef90",
      "tree": "db7fa799efc55f695d83cfb246893f7369514e2a",
      "parents": [
        "372f5c99d5c61fea8f5653c1f5effef1ce291d5e",
        "22bbcbbbd71ba62b5d3bd08ed02fc06f15c21d09"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "giolekva@gmail.com",
        "time": "Wed Dec 16 21:17:06 2020 +0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Dec 16 21:17:06 2020 +0400"
      },
      "message": "Merge pull request #31 from giolekva/docs\n\nVision doc\r\n\r\n#32 "
    },
    {
      "commit": "bc7ffa999d47f2b7363d12550891fca9698dbc40",
      "tree": "7d9fb04cb4078716c66447fe06b540d0f4b98ab0",
      "parents": [
        "372f5c99d5c61fea8f5653c1f5effef1ce291d5e"
      ],
      "author": {
        "name": "Boris Pavacic",
        "email": "boris.pavacic@gmail.com",
        "time": "Wed Dec 16 23:24:15 2020 +0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Dec 16 23:24:15 2020 +0700"
      },
      "message": "Fix the command to generate public key"
    },
    {
      "commit": "372f5c99d5c61fea8f5653c1f5effef1ce291d5e",
      "tree": "da3b5b82eb45aaacf9433127b82e8e4050d0df66",
      "parents": [
        "5ebadc12c42b5a625ac6de45790659d3acd6a220",
        "cf9a48b7f2b1335003d5af7750b90788642f47fc"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "giolekva@gmail.com",
        "time": "Wed Dec 16 19:19:18 2020 +0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Dec 16 19:19:18 2020 +0400"
      },
      "message": "Merge pull request #28 from giolekva/bazel\n\nBuildify/format bazel build files\r\n\r\n#7"
    },
    {
      "commit": "cf9a48b7f2b1335003d5af7750b90788642f47fc",
      "tree": "da3b5b82eb45aaacf9433127b82e8e4050d0df66",
      "parents": [
        "0c083378565b735194f2e4f6fe114edae5f3be48"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Wed Dec 16 19:17:48 2020 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Wed Dec 16 19:17:48 2020 +0400"
      },
      "message": "bazel_tools: reformat shell parts of the macros\n"
    },
    {
      "commit": "0c083378565b735194f2e4f6fe114edae5f3be48",
      "tree": "35cf4a07833b6fae1957782fe7fda54f82417f07",
      "parents": [
        "e5221bcccd21dbd9b8bfb03520da28b6b5e60dfd"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Wed Dec 16 14:54:27 2020 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Wed Dec 16 14:54:27 2020 +0400"
      },
      "message": "buildify all bazel files\n"
    },
    {
      "commit": "e5221bcccd21dbd9b8bfb03520da28b6b5e60dfd",
      "tree": "46f04c1cabf9e2a9880ee34b0d8e3087ba080bf3",
      "parents": [
        "1d80649180095642cd9da5ba8c41859afb05ae60"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Wed Dec 16 14:34:23 2020 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Wed Dec 16 14:34:23 2020 +0400"
      },
      "message": "dev instructions: improve shell script formatting\n"
    },
    {
      "commit": "5ebadc12c42b5a625ac6de45790659d3acd6a220",
      "tree": "54e8fa8a120508bde514bfff00008e46f5230061",
      "parents": [
        "c62cdea8ab6cc0397670986496cdc88194de2c1d",
        "1d80649180095642cd9da5ba8c41859afb05ae60"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "giolekva@gmail.com",
        "time": "Wed Dec 16 14:15:22 2020 +0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Dec 16 14:15:22 2020 +0400"
      },
      "message": "Merge pull request #25 from giolekva/bazel\n\nImprove dev environment\r\n\r\n#7"
    },
    {
      "commit": "1d80649180095642cd9da5ba8c41859afb05ae60",
      "tree": "54e8fa8a120508bde514bfff00008e46f5230061",
      "parents": [
        "6324b3c569c6a51523fb3042f59a349c0a74927f"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Wed Dec 16 14:13:38 2020 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Wed Dec 16 14:13:38 2020 +0400"
      },
      "message": "Simplify installation scripts and update dev.md with instructions of how to use them\n"
    },
    {
      "commit": "6324b3c569c6a51523fb3042f59a349c0a74927f",
      "tree": "49a45af7e5de47342000d5f345cb6f8e39cf1cd8",
      "parents": [
        "608664db22ea933402837ca90fd4f736b2adad43"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Wed Dec 16 12:30:20 2020 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Wed Dec 16 12:30:20 2020 +0400"
      },
      "message": "rm old archive dir\n"
    },
    {
      "commit": "c62cdea8ab6cc0397670986496cdc88194de2c1d",
      "tree": "57c302cf7126d7e4c181bcde617e21d7a7c04399",
      "parents": [
        "857078ac7c13fab34429e9c5425af9ac9a0bcace",
        "608664db22ea933402837ca90fd4f736b2adad43"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "giolekva@gmail.com",
        "time": "Wed Dec 16 12:06:06 2020 +0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Dec 16 12:06:06 2020 +0400"
      },
      "message": "Merge pull request #24 from giolekva/bazel\n\nMove core services to core/ dir\r\n\r\n#7"
    },
    {
      "commit": "608664db22ea933402837ca90fd4f736b2adad43",
      "tree": "57c302cf7126d7e4c181bcde617e21d7a7c04399",
      "parents": [
        "bc79b678a8fbb5bab34f393c353ee3f4e15a291b"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Wed Dec 16 11:50:21 2020 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Wed Dec 16 11:50:21 2020 +0400"
      },
      "message": "controller: move to core/api\n"
    },
    {
      "commit": "bc79b678a8fbb5bab34f393c353ee3f4e15a291b",
      "tree": "e9a3f283d8af853ea086078bf6850b9f67e519df",
      "parents": [
        "9fb5b0abeba887fe3466f925270cf736eede9f60"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Wed Dec 16 11:47:44 2020 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Wed Dec 16 11:47:44 2020 +0400"
      },
      "message": "events: move to core/events\n"
    },
    {
      "commit": "9fb5b0abeba887fe3466f925270cf736eede9f60",
      "tree": "59c4fc510b3ff24943e376d3261bc660678557f5",
      "parents": [
        "b9a4de291a9a4801457d4db12f4bb6f1a8d80aa6"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Wed Dec 16 11:43:46 2020 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Wed Dec 16 11:43:46 2020 +0400"
      },
      "message": "appmanager: move to core/appmanager\n"
    },
    {
      "commit": "22bbcbbbd71ba62b5d3bd08ed02fc06f15c21d09",
      "tree": "f4da7d163f121a419350acd3c045a3acd2b81dd2",
      "parents": [
        "b9a4de291a9a4801457d4db12f4bb6f1a8d80aa6"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Wed Dec 16 11:37:05 2020 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Wed Dec 16 11:37:05 2020 +0400"
      },
      "message": "Vision doc\n"
    },
    {
      "commit": "857078ac7c13fab34429e9c5425af9ac9a0bcace",
      "tree": "685cac97af0381c4fe3f553b4e2de111485b832f",
      "parents": [
        "b71b0f85b906f710c92f8b0d47479f58a5f8b6b2",
        "b9a4de291a9a4801457d4db12f4bb6f1a8d80aa6"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "giolekva@gmail.com",
        "time": "Tue Dec 15 23:29:27 2020 +0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Dec 15 23:29:27 2020 +0400"
      },
      "message": "Merge pull request #23 from giolekva/bazel\n\nImprove installation scripts\r\n\r\n#7"
    }
  ],
  "next": "b9a4de291a9a4801457d4db12f4bb6f1a8d80aa6"
}
