Skip to content

Latest commit

 

History

History
97 lines (82 loc) · 7.03 KB

README.md

File metadata and controls

97 lines (82 loc) · 7.03 KB

My2Sec - The Ultimate PM & HR Suite By Smart Workers for Smart Workers

Architecture

The objective is to create an open source and GDPR compliant suite to support remote working. My2Sec helps smart workers to keep track of the time spent on different activities, by enabling at the same time the production of a trusted and verified profile of the workers' transferable soft and hard skills. My2Sec integrates several open source solutions like ActivityWatch for tracking the time spent on different tasks, OpenProject for project management and SuperSet as BI tools for KPI assessment. Events generated by ActivityWatch are stored on the local device of the worker who will always have full control on her data. Events that a worker agrees to share are aggregated by AI algorithms to provide two indicators: the time spent by workers on different tasks and the transferable skills profile. The skills profile will be eventually stored in a SOLID pod but will be also available to HR managers through a trustful and semantic DApp built on top of the ONTOCHAIN ecosystem.

MY2SEC INSTALLATION

Prerequisites

  • ActivityWatch
    My2sec requires the ActivityWatch software to be installed on your computer. If your computer does not have ActivityWatch installed, please install it from the official website: https://activitywatch.net/

Installation

  • Download the latest release from https://github.com/vaimee/my2sec/releases.
  • Unzip the downloaded archive
  • Go into the unzipped folder and double click "electron.exe": after some seconds the application will start, showing the login screen.

Optionally, you can create a desktop link to the .exe file: click with the right mouse button on the electron.exe file and select "add desktop link". Then, copy the link onto your desktop. Double click the link to start the application

USAGE

0-login

Once the application is started, a popup login window will appear, prompting the user to either: a.login or b.create a new user. If it's the first time you are accessing the platform, please create a new user, then login from the same window. Architecture

0.1-homepage

If login is successful, the homepage of the application will load Architecture The interface has 4 main components:

  • activities dashboard (right side of the screen)
    View history of your activities
  • open project tasks (left side of the screen)
    View current tasks, spent time and history of previous log times
  • control panel (top-right side of the screen)
    Start/stop tracking events, upload events, explore events
  • bug report button (top of the screen)
    Send a bug report to the administrator

1-manage start/stop scan

Pressing the 'start scan' button in the control panel will activate the ActivityWatch watchers, which will begin collecting data about your activities. Press the start button again to stop the scan. The explorer button in the control panel opens the explorer panel, which allows to take a look at the currently collected data before uploading it.

2-upload events

Once a scan has been started and stopped, the upload button becomes active. Pressing it will initiate the Upload and Validation Procedure, and will open a popup window in the producer (the "validation panel"). Architecture The validation panel will help you validate your collected events before storing them into the SEPA database in three steps:

  • Validate events: select if an event is related to work (working) or not (not working), confirm to upload events to SEPA
  • Validate activities: select the correct category for the specified activity, confirm to upload categorized activities to SEPA
  • Show log times: no user input is needed here, in this panel after a while the aggregation results will be shown, showing the exact time logged on Open Project.

The validation procedure is now complete, and the validation panel can be closed.
You can refresh the dashboards to see your activities added to the charts.

3-report issues

Pressing the bug report button on the top of the screen will open the bug report window: Architecture Here you can send messages directly to the administrator to report bugs, issues, enhancements, or general messages.
This messages are stored in the sepa database, and every time a new message is consumed, various actions can be triggered, like automatically posting the issue on Github, sending a mail to the administrator, sending a discord message, etc...
Any support is appreciated!


DEVELOPMENT

If you are a developer, or you have trouble using the official release of My2sec, this guide will guide you through the steps necessary to run My2sec application in Development mode. WARNING: there is a known issue with Python3.

Prerequisites

  • Node.js
    To check if Node.js is installed on your local machine, type the following commands in your terminal:
    node -v
    npm -v
    If one of the commands returns an error, please install Node.js from the official website: https://www.nodejs.org
  • Python
    To check if Python is installed on your local machine, type the following commands in your terminal:
    python --version
    pip --version
    If one of the commands returns an error, please install Python from the official website: https://www.python.org/
  • ActivityWatch
    If your PC does not have ActivityWatch installed, please install it from the official website: https://activitywatch.net/

Download

  • Clone this repository

Dependencies Installation

  • Open a terminal and move into the ActivityWatchProducer folder in the cloned repository:
    cd C://Users/User/.../1_ActivityWatchProducer
    This is the main interface you will be using to interact with My2sec services, like publishing and aggregating your activities.
  • The interface is built with the Electron framework, to install it type the following command in your terminal:
    npm install --save-dev electron
  • Once finished, from the current directory cd into the following directory:
    cd ./PY/my2sec
    and install the required files for My2sec Working Events Ai Filter:
    python -m pip install -r requirements.txt

Starting the application

Now that all requirements have been fullfilled, you can start the Producer Application: open a new terminal and type

cd C://Users/User/.../1_ActivityWatchProducer
to move into the Producer Directory. Start the application by typing:

npm run start:windows #on windows
npm run start:posix #on Mac/linux

from inside the Producer Directory.