Skip to main content

Entity Documentation Index

This document provides comprehensive documentation for all entities in the FishingLog system.

Core Entity Categories​

User & Authentication​

User Entities - User accounts, authentication, profiles, and social relationships

  • User, UserFriend, UserFollow, Circle, CircleMember, UserFavoriteSpecies, UserProfile, UserBan, UserReport, CircleApplication, CircleShare, UserDefinedModel

Fishing Logs & Sessions​

Fishing Log Entities - Fishing sessions, catches, verification, and environmental data

  • FishingSession, FishingLogEntry, CatchDetail, Telemetry, SessionTelemetry, Weather, Current, CatchVerification, CatchVerificationEvidence, CatchVerificationWitness, AiVerificationRequest, DataSharingAgreement, DnrAccessLog

Gear Management​

Gear Management Entities - Fishing gear including rods, reels, lures, lines, and setups

  • Brand, Rod, Reel, Lure, Line, GearSetup, GearVariant, RetailLink

Rod Building - Custom rod building system

  • RodBuild, RodBlank, RodComponent, Guide, GuidePlacement, RodWrap, RodFinish, RodBuildingTool

Line Spooling - Complex line spooling configurations

  • ReelSpooling, LineSegment, LineSegmentConnection, Knot

Apparel - Fishing clothing and accessories

  • Apparel (with type-specific fields for waders, boots, gloves, hats, sunglasses)

Social Features​

Social Entities - Posts, comments, likes, forums, and mentorship

  • Post, Comment, PostLike, PostMedia, Forum, ForumPost, Mentorship

Tournaments​

Tournament Entities - Tournament management, registrations, and results

  • Tournament, TournamentRegistration, TournamentResult, TournamentCategory, TournamentTeam, TournamentPrize, TournamentRule, TournamentSponsor, TournamentEligibilityRule

Charters​

Charter Entities - Charter listings, bookings, and captain management

  • CharterCaptain, CharterListing, Booking, BookingParticipant, CharterAvailability, CharterPricing, CharterListingImage

Clubs & Groups​

Club Entities - Fishing clubs and memberships

  • FishingClub, ClubMembership, ClubEvent

Group Entities - User groups and communities

  • Group, GroupMember, GroupPost

Events​

Events Entities - Fishing events (expos, seminars, workshops)

  • FishingEvent, FishingEventRegistration, FishingEventSeminar, FishingEventVendor, FishingEventSponsor

Spots & Reports​

Spot Entities - Fishing spots and boat ramps

  • FishingSpot, SpotRating, BoatRamp, SpotAccess

Report Entities - Fishing condition reports

  • FishingReport, ReportConditions, ReportRating

Media & Content​

Media Entities - Media library organization

  • MediaLibrary, PhotoAlbum, FishingVideo, FishingArticle

Payments & Subscriptions​

Payment Entities - Stripe payments and subscriptions

  • Subscription, Dispute, PaymentRetry

Notifications​

Notification Entities - User notifications

  • Notification

Fish Species & Taxonomy​

Fish Species Entities - Fish species and relationships

  • FishSpecies, FishSpeciesRelationship, TaxonomicRank

Weather & Environmental​

Weather Entities - Weather, lunar, and tide data

  • LocationWeatherHistory, LunarData, TideData, FishingConditionsRating, FishingSuperstition

Regulations​

Regulations Entities - Fishing regulations and Master Angler programs

  • State, FishingZone, ZoneBoundary, FishingRegulation, MasterAnglerProgram, MasterAnglerSpecies, MasterAnglerSubmission

Personal Best​

Personal Best Entities - Personal best tracking

  • PersonalBestCriteria, PersonalBest

Ice Fishing​

Ice Fishing Entities - Ice fishing equipment and setups

  • IceFishingSetup, IceFishingSetupRod, IceFishingSetupTipUp, IceHole

Boats​

Boat Entities - Boat tracking and equipment management

  • Boat, BoatEquipment, BoatEquipmentPlacement, BoatMountingTrack, BoatModel, BoatManufacturer, BoatStyleModel, BoatOwnershipHistory

Captain Licenses​

Captain License Entities - Captain's license tracking

  • CaptainLicense, LicenseRenewalEvent, LicenseRenewalEventRegistration, LicenseRenewalHistory

Three.js 3D Models​

Three.js Entities - 3D model management

  • ThreeJsModel, ModelVariant, UserModelCustomization, RodModel, ReelModel, EquipmentModel, ModelTexture

Advertising​

Advertising Entities - Ad campaign management

  • AdvertiserAccount, AdCampaign, AdCreative, AdImpression, AdClick, AdvertiserPayment, AdvertiserInvoice, AdvertiserTeamMember

Education​

Education Entities - Fishing courses and certifications

  • FishingCourse, CourseModule, CourseEnrollment, CourseCertification

Conservation​

Conservation Entities - Conservation programs and tagging

  • ConservationProgram, ProgramParticipation, FishTag, TagReport

Research​

Research Entities - Research projects and data contributions

  • ResearchProject, ProjectParticipation, DataContribution

Marketplace​

Marketplace Entities - Gear marketplace listings

  • MarketplaceListing

Common & System Entities​

Common Entities - System-wide entities

  • FeatureFlag, AuditLog, ContentModerationResult, ModerationSettings, ModerationRule, LookupTable, SystemSetting, SiteAnnouncement, Theme, AdminPermission

Additional Documentation​

Specialized System Documentation​

These systems have comprehensive documentation in the source code:

Common System Documentation​

Quick Reference​

Entity Documentation Structure​

Each entity is documented with:

  • Purpose: What the entity represents
  • Key Fields: Important properties and their meanings
  • Relationships: How it connects to other entities
  • Usage Patterns: Common ways to use this entity (with code examples)
  • Considerations: Important notes and future-proofing considerations

Source Code Location​

All entity source files are located in:

FishingLog.Infrastructure/Entities/

Entity documentation files (README files) are co-located with the entity source code for easy reference.