Anaconda Enterprise: Documentation

# Projects (AEN 4.0)

Everything in Anaconda Enterprise Notebooks begins by creating or opening a project. After that you can set up a special environment with the packages you want, add team members and set their access permissions. You can also modify your project settings.

To begin, log onto your AEN account. This brings you to your user profile page. Now you are ready to open an existing project or create a new project.

## Create new project

To create a new project, click on the new project icon on the right hand side of the upper Anaconda Enterprise Notebooks task bar:

Or on your profile page, you can click the New project button:

This brings you to the project page where you can name your project, select whether it will be public or private, and include a summary of your project:

TIP: You can update the summary and description any time from your Project settings’ Project menu as described below.

After you have filled in the new project form, click the Next button at the bottom right.

This opens your new project’s home page or project dashboard:

Use the Project Settings icon at the top right of the project page to modify the summary or add a description of the project.

A project description is recommended, and may optionally be written in Markdown syntax (plain text valid Markdown). Click the Preview tab in the description area to see how the Markdown will appear.

TIP: You can add or update your project’s summary and description any time from the Project Settings Project menu described below.

## Add team members

Now you may add team members to your new project if you wish. Adding team members to your projects makes collaboration easy in Anaconda Enterprise Notebooks. Team members have full access to the project applications, files and services. When you add a team member, their home directory is mounted in the project. There is no need to download and email data or scripts – your team member can work on the same files in the same environment in which you are working.

To add new team members to your project, in the Team box start typing the first few letters of their username. The type-ahead feature displays all team members with that spelling so you can quickly add team members.

TIP: You can add or remove team members any time from the Project Settings Team menu described below. You can also modify their read, write or execute permissions any time from the Workbench app.

## Project drive and directory

Each project has a project drive attached that all team members can access. The size of the project drive is not limited by Anaconda Enterprise Notebooks. Please contact your system administrator if you find you do not have sufficent space.

Each project also has a separate project directory on the project drive. The project directory is a separate directory from the owner’s and team members’ home directories, for project files and data so team members can share and have equal access.

NOTE: The path to your project directory is `/projects/<project_owner>/<project_name>`

## Project settings menu

Access your project settings from the Project page, the Project Settings 3-gear icon at the top right:

Here you will find settings for the Project, Team, Admin and Info.

### Project settings

Status. The project settings Status box allows you to toggle between manually starting and stopping your project. Stopping a project stops all the apps launched for that project. Projects do use resources such as memory and compute cycles when running, so it is best to stop projects when they are not in use.

Project. In the Project box you can update your project’s summary and description.

Description. In the Description box you can use plain text or markdown syntax. Click the Preview tab to see how the markdown description looks. Click the Submit button at the bottom left to save your changes:

### Team settings

From the project settings Team menu, you may easily add or remove team members who have access to this project. Simply type in a few letters of the username you would like to include, then select them from the usernames that appear. To add them, click the ‘Add’ button. Repeat for each team member you wish to add to this project.

Removing team members is just as easy as adding them. Click the red ‘Remove’ link next to the name of the user you would like to remove.

### Admin settings

From the project settings Admin menu, you may make this project private or public.

You may also reclaim ownership of a project. Ownership of all files and folders created by the team members on this project will be transferred to you. Project files and folders are copied and renamed.

TIP: Be sure you have stopped the project from the Project Settings menu so team members cannot make changes while you are changing ownership.

Delete this project deletes all project files and information about it. There is no “undo” option. Be sure you have downloaded a copy of all files that you may want to save.

Move this project to a new compute node if you have multiple resources available and want to move them to the other resource. The project must exist on both compute nodes. Make sure that this is done before you move.

### Info settings

The info settings menu provides details about your project. See whether it is currently running or stopped, when it was created, when it was last accessed, and data center in which it is running.

## Using Search

You can search for projects and files using the Search box at the top of the screen. When you are viewing a project home page, the Search box will search for files within the current project. Otherwise, it will search for projects containing files that match your search criteria.

Your search results will include only files and projects which you have permissions to view. To search, just enter a string of text and press enter.

TIP: Search matches by glob pattern in a similar manner to file matching on command lines. For example, to find projects in the ‘Test’ family that are numbered from 00 to 99, search for `Test-??`. To find all projects whose name ends in ‘Stats’, use `*Stats`.

After pressing enter your search results will appear. Click on the plus (“+”) icon to show the files that search returned for the given project:

The results are limited to public projects and those private projects to which you have at least view access. If you click on a filename, the file will open for you to view:

Clicking on the project name instead of the plus (“+”) sign will take you to the project.

### Saving a search

You can save a search for future use. At the top of the search results clicking on the “save this search” text will save the search:

The “save this search” text will change to read “stored”.

The saved search can be found on your home page in the “Saved Searches” box that lists all the projects for which you are a contributor.

To remove a saved search, click the “x” next to the name of the search:

### Search tips

These types of files are included in search results:

- `.py`: Python source files
- `.ipynb`: IPython/Jupyter notebooks
- `.txt`: plain text files
- `.md`: Markdown files

You can use any of the following search constructs:

- Ordinary words will match the full-text contents of any file
- Wildcards are permitted (`John*` will match `John` and `Johnny`). These are called “glob patterns” and resemble the usage in command-line shells.
- Combine queries using `AND` or `OR`, and group them using parentheses.

You can also search in specific metadata fields:

- `imports:name` will match files that import the module ‘name’
- `uses:name` will match files that reference the identifier ‘name’. Referenced names include functions and globals imported from other modules, as well as the names of methods invoked on any object.
- `defines:name` will match files that define the identifier ‘name’. Defined names include functions defined at global scope, class names, and method names within classes.
- `acl:user` will match files that the user named ‘user’ has read access to.

Files that are modified while a project is running will automatically be re-indexed. Normally, this will occur shortly after the files are modified. If you create or update a large number of files (for example, cloning a git repository or copying a directory), the search results may take several minutes to update.

If files are modified while the project is not running, they will be re-indexed once the project is started.

## Tag a project

### Add or Remove Tags

Tags are a way to group similar or related projects, to identify a project so that it is easier to find at a later date, or as a way to let others know about a project.

You can create and remove tags on any project that you have access to.

To add a new tag, go to the project’s main page. In the “Tags” box on the right of the page enter the name of the tag you wish to add and click the “Add” button. The new tag will be added and show up in the “Tags” list.

To remove a tag from a project, click on the “x” next to the tag’s name:

If the tag was not already visible from your main home page in the “Tag” list it will be added. If the tag already was showing because another project had the tag, then the number next to the tag name will be incremented:

### List tagged projects

Just click on a tag name and a list of projects with that tag will be shown. Example, here we click the tag “science”:

The results list shows both public projects and private projects that you can access.

Clicking on a project in the tagged list will take you to that project’s home page.

## Star a project

When you star a project, it makes it more likely that the project will appear in the Top Rated project list on the Dashboard home page.

To star a project, just click the star icon at the upper right on the project page. To unstar a project, just click the star again.

TIP: Adding or removing stars on a project does not affect anyone else’s stars that they may have added.

The number next to the project in the Top Rated list is the number of stars that have been given to that project. Clicking on a project in the list will take you to a view of that project’s home page.

## Related projects

On a project’s home page, on the right side, there is a list of “Related Projects”. The projects listed in this section are automatically based on how similar their fields are to the project being viewed:

## Recommendations

The recommendation engine leverages the search functionality to locate similar files and projects. In determining what should be listed in Related Projects, the recommendation engine scans the files in the project. The terms found in those documents are weighted to determine which ones are to be used for the “likeness” search. A search is then performed, with extra weighting given to the uses and imports keywords. The engine finds the files and the projects that are most similar to the current project’s files. The results are scored and the top scoring matches are displayed for public projects and those private projects to which you have access. The recommendation is based on how similar the files are between the projects.

## Collaborators

A project’s home page has a section that lists your top collaborators. This list is composed of those collaborators who share the most projects in common with you.

If you click on one of the collaborator’s names, you will be taken to a view of their home page where you can see all public projects and private projects they have shared with you.