Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
132 changes: 93 additions & 39 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,29 +6,26 @@ SPDX-License-Identifier: LGPL-2.0-or-later

# Ondsel Lens Addon

This FreeCAD addon provides a convenient way to upload designs
to [Lens](https://lens.ondsel.com), a cloud service by Ondsel, designed
to publicly share and manipulate FreeCAD projects.
This FreeCAD addon provides a convenient way to manage designs in [Ondsel Lens
server](https://github.com/FreeCAD/Ondsel-Server) instances. An Ondsel Lens
server is a server that can be hosted by yourself to manage and share FreeCAD
files.

## Installation

The Ondsel Lens addon is already installed by default in [Ondsel ES](https://ondsel.com/download/).
For FreeCAD, the Ondsel Lens addon is available through the FreeCAD Addon Manager.
The Ondsel Lens addon is available through the FreeCAD Addon Manager.

Open the Addon manager. Find in the list 'Ondsel-Lens' and install it.
The installation will require restarting FreeCAD.
Open the Addon manager. Find in the list 'Ondsel-Lens' and install it. The
installation will require restarting FreeCAD. You should then see the Ondsel
Addon in its own tab besides Start. You can type Ctrl-L to show it.

You should see the Ondsel Addon in its own tab besides Start. If it doesn't appear, you can click the yellow or orange Ondsel button or you can type Ctrl-L.
### Dependencies

<!-- ![image](https://github.com/Ondsel-Development/Ondsel-Lens/assets/538057/766b7cd7-5c0a-409b-9135-940be8b2fe54)-->
![image](https://github.com/user-attachments/assets/7cc30135-4b7f-4bc3-9cfc-d7ce78621ba6)
The addon requires a couple of additional Python dependencies that should be
installed automatically by the FreeCAD addon manager.

## Dependencies

The addon requires a couple of additional Python dependencies that should be installed automatically by the FreeCAD addon manager.

If you have a problem with dependencies you can install them manually by:
Open the Python console in FreeCAD and enter the following code
If you have a problem with dependencies you can install them manually by: Open
the Python console in FreeCAD and enter the following code

```
import addonmanager_dependency_installer
Expand All @@ -38,28 +35,59 @@ depsInstaller._install_python_packages()

Note: ```pip install jwt``` installs the wrong library. You need ```pip install pyjwt```.

## First Use (What does the addon do?)
## First Use

### Overview

The addon introduces the notion of "workspaces". Workspaces are collections of
The addon introduces the notion of *workspaces*. Workspaces are collections of
files that constitute a project and are hosted on the Ondsel Lens server. To
start working and collaborating on FreeCAD designs, you must create an account
on Ondsel Lens by following the signup link in the dropdown menu.
on an Ondsel Lens server.

### Creating an account

Visit an Ondsel Lens server in a web browser and sign up. There are four
pieces of information to remember:
- the URL of the Lens server, for example `http://localhost:3000`,
- the URL of the Lens API, for example `http://localhost:3030`,
- the email address with which you signed up, and
- the password.

### Create a profile

Once an account is created, you can open the Ondsel Lens Addon by switching to
the tab "Ondsel Lens" or press Ctrl-L in FreeCAD. In the top left, click on
the main button that says "(no profile selected)" and choose "Manage profiles".
There you can create a profile with a name that is meaningful to you and
consists of alphanumeric characters, dashes, or underscores, for example
"localhost". If the suggested values for the Ondsel Lens and Ondsel API url
are correct, you can skip these values. Finally, add your email address, and
press OK. You can then close the "Manage Profiles" dialog.

### Log in

Now that you have created a profile, you can choose this profile by clicking
the main button in the top left and choosing Profile and then the profile that
you've just created. This changes the button color from grey to yellow which
means that you are in the logged out state.

Once an account is created, you can log in through the addon and enter your
workspace "Default (Personal)". From here you can save files and access them
from another location.
In the main button, you can now choose "Log in" that shows a dialog where you
can enter the password for the Ondsel Lens server. Filling in the password and
pressing OK should log you in to the server and the color of the button should
change from yellow to orange, which means that you are logged in.

In addition, you can browse examples curated by Ondsel (the Ondsel Start tab),
browse your bookmarks, search for models, or view the most recent models that are shared on Lens.
You can now access your workspace "Default (Personal)" and from here you can
save files and access them from another location. In addition, you can browse
examples curated for this server (the Ondsel Start tab), browse your bookmarks,
search for models, or view the most recent models that are shared on Lens.

<!-- needs to be updated with images from the new flavor -->
<!-- ![image](https://github.com/Ondsel-Development/Ondsel-Lens/assets/538057/5de4781c-b90c-4de1-bd8a-e23283348fbd) -->
![image](https://github.com/user-attachments/assets/d59fb797-bdc8-44a7-b84c-dcec3a2e30a4)
<img width="1254" height="995" alt="screenshot-workspace" src="https://github.com/user-attachments/assets/c98ac2f8-bdf4-48a6-96f6-69149ccf83d4" />

### Workspaces

A workspace maps to a folder on your hard drive and contains files
and folders. Files can be in five different states:
In tab "Workspaces" you should see a list of workspaces available to you. A
workspace maps to a folder on your hard drive and contains files and folders.
Files can be in five different states:

- "Untracked": Ondsel Lens does not track this file
- "Not downloaded": The file is only available on Lens
Expand All @@ -77,10 +105,9 @@ of the file, the version information and share links of the file.

### Sharing Links

A file that is hosted on the Ondsel Lens server can be shared and viewed through
the website. [Sharing links](https://lens.ondsel.com/share/6488bfa93649fe410974f6f9)
can also be fine-tuned to permit the recipient certain privileges including
download formats.
A file that is hosted on the Ondsel Lens server can be shared and viewed
through the website. Sharing links can also be fine-tuned to permit the
recipient certain privileges including download formats.

### Offline workflow

Expand All @@ -89,11 +116,38 @@ still possible to work on the files of workspaces that are currently on disk.
As soon as a user logs into Lens, the user has the ability to upload the new
versions to Lens.

## Contact
## History

The [Ondsel Lens server](https://github.com/FreeCAD/Ondsel-Server) is the
server software for the cloud service `lens.ondsel.com` from company
[Ondsel](https://web.archive.org/web/20250929053407/https://ondsel.com/).
This addon was shipped with Ondsel's flavor of FreeCAD called Ondsel ES and
aimed to integrate Ondsel ES and the Lens platform. The addon was also
available in FreeCAD's Addon Manager.

When Ondsel [ceased operations](https://web.archive.org/web/20250929053313/https://ondsel.com/blog/goodbye/),
the server software was released open source under the AGPL
license. The addon had always been open source. Both software packages and
its documentation are now incorporated into the [FreeCAD GitHub
organization](https://github.com/FreeCAD).

Development of the server is now continuing under the [Ondsel Onward
Fund](https://blog.freecad.org/2025/02/14/the-ondsel-onwards-fund/) and
development of this addon as part of the [NLnet](https://nlnet.nl/) grant
[Lens/FreeCAD integration](https://nlnet.nl/project/Lens-FreeCAD-integration/).

![Logo Lens/FreeCAD Integration](https://nlnet.nl/project/Lens-FreeCAD-integration/freecad.hex.svg)

We are grateful to you for using the addon and letting us know what you think.
The best place to talk with us about bugs and features is on our [Discord Server](https://discord.gg/7jmzezyyfP)
## License

This repository is [REUSE](https://reuse.software/) compliant.

[![REUSE status](https://api.reuse.software/badge/github.com/FreeCAD/Ondsel-Lens-Addon)](https://api.reuse.software/info/github.com/FreeCAD/Ondsel-Lens-Addon)

## Contact

We have many improvements and additional features planned. Follow the development on the
[GitHub page](https://github.com/Ondsel-Development/Ondsel-Lens) and feel free to raise issues there.
We're excited you're here with us!
If you're interested in using or developing the addon, feel free to create or
view issues in the [issue
tracker](https://github.com/FreeCAD/Ondsel-Lens-Addon/issues). The best place
to talk with us about bugs and features is on our [Discord
Channel](https://discord.com/channels/870877411049357352/1313153066266267688).
3 changes: 3 additions & 0 deletions changeLog.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,3 +43,6 @@ Large update with an MDI view with various tabs that allow browsing Lens.

# 2024.11.29.01
Change license from MIT to LGPL-2.0-or-later

<version>
Support switching different Lens server instances with profiles.