Watchful Hub is a server-side component that enables features like collaboration, S3 integration, and MLOps platform integration. It is a self-contained application written in Rust containing a server, the core functionality, and a frontend that are all compiled and distributed as a single binary within the Docker image.
With Watchful Hub, you and your team members have the ability to collaborate on the same project. This means you can share anything within that project, such as datasets, classes, hinters, and hand labels. Moreover, each team member can push and pull their progress to the Watchful Hub. Here, we will walk through the most basic Watchful Hub setup processes:
By default, Watchful-Hub accepts traffic on
0.0.0.0 which makes it easy to run, but is inherently insecure unless run behind a firewall or VPC. This design choice was made to let Watchful Hub play nicely with existing security infrastructure without requiring much ongoing duplicated effort.
We STRONGLY recommend that Watchful-Hub be run ONLY in a trusted environment with network access correctly limited to only those who need it, and should not be made accessible ‘publicly’ to the outside internet. e.g it should never be accessible from a public IP address. However, if you do need to run Watchful-Hub in an untrusted environment while making it accessible and secure (e.g: with TLS), there are a few options:
- Install Nginx locally on the instance and set it up for reverse proxying (https://docs.nginx.com/nginx/admin-guide/web-server/reverse-proxy/)
- Run Nginx within a docker container and set it up for reverse proxying (https://hub.docker.com/r/jwilder/nginx-proxy)
Watchful Hub contains crucial information for your organization, including account settings and user roles. Access to your organization's Hub and any corresponding actions requires user authentication; you will still be able to work on projects when not logged in, but will not be able to use collaboration features. Outlined below are the pages in the Hub as well as steps to create your account.
Note: To create an account in your organization's Hub, you will need direct access to the Hub URL. Be sure to request this from your Watchful administrator.
The first user account registered in your organization's Hub will become an Admin by default. Subsequent accounts need to be either approved or created by an Admin (see Admin section below).
To create your account:
- Go to your organization's Watchful Hub URL
- Click 'Sign Up' in the top right corner
- Enter a username. This will be used to track your actions when collaborating on a project.
- Enter the email address associated with your account.
- Enter a password.
- Click 'Sign Up.'
If you are the first user registered in this Hub, your account will be created with the Admin role. Otherwise, your account will go into a pending state and must be approved by an Admin before you can access the Hub and the pages below.
The Account page provides basic information about your user account within the Watchful Hub: username, role, and email associated with the account.
The Team page is only available to users with the Admin role; on this page you'll see a list of users in the organization, their associated role, their status, available actions, and the 'Pending Requests' tab.
In the top right, the 'Add to Team' button allows you to add a new user to your organization's Hub via a modal in which you'll configure the user's username, email address, password, and role.
Once the new user is added to the team, they can login with the new credentials.
Admins can also edit existing users' information, including their password:
Finally, archiving a user disables their account, preventing them from accessing your organization's Watchful Hub.
Watchful Hub allows you to designate Admin, Standard, and Annotator user roles, providing an added layer of security for your organization. As shown above, these roles can be configured from the Admin page in the Hub.
Admin users can do the following:
- Grant admin role to other users
- Create and approve new users
- Edit existing users
- Access the Team page of the Hub
- Access any route for the organization
Standard users can do the following:
- Access the Account page of the Hub
- Access collaboration routes within the Watchful application (see Collaboration Within Watchful for more information)
Annotator users can do the following:
- Access the Account page of the Hub
- Access the Co-Pilot page in the application (coming soon)
Certain features of the Application require authentication, such as Collaboration. Follow these steps to sign in:
- Open the Application (this is where your projects live)
- Click the "Login" button in the top right corner
- Enter the email address and password you used to create your account
- Enter your organization's Hub URL
Updated 5 months ago