Overview
A Project is Domino’s unit of organization: the code, data, results, and people for one piece of work. Apps, models, and API endpoints publish from a Project, and governance bundles track the work inside it. Projects carry work from first experiment to production asset.How it works
Project types
When you create a Project, you choose where its code lives:- Git-based Projects keep code in your own Git provider (GitHub, GitLab, Bitbucket, or another). This is the norm: you keep your provider’s branches, pull requests, branch protection, and CI, you control when work syncs, and you can change the Git reference at any time.
- Domino File System (DFS) Projects keep code in Domino’s internal repository. Domino versions your files automatically with a Git server it runs in the background, but you don’t get an external provider’s collaboration features.
Use a Git provider whenever you can. Git-based Projects give you more control over code synchronization and the full workflow of your Git host. Choose Domino’s internal repository only when you don’t have a Git provider or your organization’s policies require it.
What’s in a Project
Every Project connects three kinds of content:- Code: Each Project has a code repository, available from the Code section of the Project.
- Data: Connect data sources, Domino Datasets, and external data volumes from the Data section. Data offerings live outside the Project so multiple Projects can share them securely.
- Artifacts: Files that are neither source code nor data, such as plots, reports, and serialized models. Git-based Projects have a dedicated Artifacts repository for these; DFS Projects store them alongside the code.
What a Project produces
A Project is also where work ships from. These assets are created from a Project and stay tied to it, even though they serve users who may never open the Project itself:- Apps: web tools built from the Project’s code and published for others to use, with Domino managing infrastructure, permissions, and routing.
- API endpoints: models from the Project deployed as REST APIs for real-time or batch predictions.
- Launchers and Scheduled Jobs: self-service forms and recurring runs that execute the Project’s code.
Versioning and execution
When you change a Project’s files, Domino records a new version. When you run an execution (a workspace, job, or app) from a Project, Domino loads that Project’s files onto the machine that executes it, so every run starts from a known state.Work with Projects
- Create Projects: Start a Project from scratch, from a template, or from existing work.
- Manage Projects: Rename, copy, transfer, export, and archive Projects.
- Project settings: Configure hardware and environment defaults, visibility, tags, credentials, and notifications.
- Git-based Projects: How code syncs with your Git provider and how to organize a Git-based Project.
- Domino File System Projects: How the Domino File System versions your files, and how to manage them.
- Files, artifacts, and results: Where Project files live and how to retrieve execution results.
- Collaborate on Projects: Invite collaborators, set permissions, and discuss work with comments.