Class Project
Represents a project in the Builvero platform that builders can join and collaborate on.
public class Project
- Inheritance
-
Project
- Inherited Members
Remarks
Projects are created by users and can have multiple members. Each project has a category, status, and can be associated with builder tags and skills to help match interested builders. Projects also have forums for discussion and collaboration.
Properties
Category
Gets or sets the category classification for this project.
public ProjectCategory Category { get; set; }
Property Value
- ProjectCategory
- Represents a project in the Builvero platform that builders can join and collaborate on.
CreatedAt
Gets or sets the UTC timestamp when the project was created.
public DateTime CreatedAt { get; set; }
Property Value
- DateTime
- Represents a project in the Builvero platform that builders can join and collaborate on.
Description
Gets or sets the main description of the project, providing an overview of what the project is about.
public string Description { get; set; }
Property Value
- string
- Represents a project in the Builvero platform that builders can join and collaborate on.
ForumTopics
Gets or sets the collection of forum topics associated with this project.
public List<ProjectForumTopic> ForumTopics { get; set; }
Property Value
- List<ProjectForumTopic>
- Represents a project in the Builvero platform that builders can join and collaborate on.
Remarks
Forum topics enable project members to discuss project-related matters, share updates, and collaborate.
Id
Gets or sets the unique identifier for the project.
public Guid Id { get; set; }
Property Value
- Guid
- Represents a project in the Builvero platform that builders can join and collaborate on.
Invitations
Gets or sets the collection of project invitations sent for this project.
public List<ProjectInvitation> Invitations { get; set; }
Property Value
- List<ProjectInvitation>
- Represents a project in the Builvero platform that builders can join and collaborate on.
JoinRequests
Gets or sets the collection of join requests submitted for this project.
public List<ProjectJoinRequest> JoinRequests { get; set; }
Property Value
- List<ProjectJoinRequest>
- Represents a project in the Builvero platform that builders can join and collaborate on.
Memberships
Gets or sets the collection of project memberships, representing all users who are members of this project.
public List<ProjectMembership> Memberships { get; set; }
Property Value
- List<ProjectMembership>
- Represents a project in the Builvero platform that builders can join and collaborate on.
Name
Gets or sets the name of the project.
public string Name { get; set; }
Property Value
- string
- Represents a project in the Builvero platform that builders can join and collaborate on.
Remarks
This is a required field and is used for display throughout the platform. Project names should be unique or at least distinguishable to avoid confusion.
Owner
Gets or sets the user who owns this project.
public User Owner { get; set; }
Property Value
- User
- Represents a project in the Builvero platform that builders can join and collaborate on.
OwnerUserId
Gets or sets the unique identifier of the user who owns this project.
public Guid OwnerUserId { get; set; }
Property Value
- Guid
- Represents a project in the Builvero platform that builders can join and collaborate on.
Remarks
The owner has full control over the project, including the ability to invite members, manage join requests, and modify project details.
PreferredExperienceLevel
Gets or sets an optional preferred experience level for builders interested in joining this project.
public string? PreferredExperienceLevel { get; set; }
Property Value
- string
- Represents a project in the Builvero platform that builders can join and collaborate on.
Remarks
This is a free-form text field that can describe the desired experience level (e.g., "Beginner", "Intermediate", "Expert").
ProjectBuilderTags
Gets or sets the collection of builder tags associated with this project.
public List<ProjectBuilderTag> ProjectBuilderTags { get; set; }
Property Value
- List<ProjectBuilderTag>
- Represents a project in the Builvero platform that builders can join and collaborate on.
Remarks
Builder tags help categorize projects and match them with interested builders who have similar tags.
ProjectSkills
Gets or sets the collection of skills associated with this project.
public List<ProjectSkill> ProjectSkills { get; set; }
Property Value
- List<ProjectSkill>
- Represents a project in the Builvero platform that builders can join and collaborate on.
Remarks
Skills indicate the technical expertise required or used in this project, helping to match builders with relevant skills.
RichDescription
Gets or sets an optional rich description of the project, which may include formatted text or additional details.
public string? RichDescription { get; set; }
Property Value
- string
- Represents a project in the Builvero platform that builders can join and collaborate on.
ShortDescription
Gets or sets an optional short description of the project, suitable for previews or summaries.
public string? ShortDescription { get; set; }
Property Value
- string
- Represents a project in the Builvero platform that builders can join and collaborate on.
Status
Gets or sets the current status of the project, indicating its stage of development.
public ProjectStatus Status { get; set; }
Property Value
- ProjectStatus
- Represents a project in the Builvero platform that builders can join and collaborate on.
Tags
Gets or sets an optional comma-separated list of tags associated with the project.
public string? Tags { get; set; }
Property Value
- string
- Represents a project in the Builvero platform that builders can join and collaborate on.
Remarks
Tags are used for categorization and search purposes. They are stored as a single string with comma-separated values.
UpdatedAt
Gets or sets the UTC timestamp when the project was last updated.
public DateTime UpdatedAt { get; set; }
Property Value
- DateTime
- Represents a project in the Builvero platform that builders can join and collaborate on.