net3000.limo 1.0.2

dotnet add package net3000.limo --version 1.0.2
                    
NuGet\Install-Package net3000.limo -Version 1.0.2
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="net3000.limo" Version="1.0.2" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="net3000.limo" Version="1.0.2" />
                    
Directory.Packages.props
<PackageReference Include="net3000.limo" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add net3000.limo --version 1.0.2
                    
#r "nuget: net3000.limo, 1.0.2"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package net3000.limo@1.0.2
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=net3000.limo&version=1.0.2
                    
Install as a Cake Addin
#tool nuget:?package=net3000.limo&version=1.0.2
                    
Install as a Cake Tool

Net3000 Limo Library

A specialized C# .NET library for managing limousine booking services, separated from the main netlib library for better modularity and maintainability.

Overview

The limo library provides comprehensive functionality for:

  • Limousine booking and reservation management
  • Vehicle and service management
  • Client management and address handling
  • Payment processing through Stripe integration
  • Calendar and scheduling views
  • Email and SMS notifications

Features

Core Functionality

  • Booking Management: Create, update, and manage limo reservations
  • Vehicle Management: Handle different types of vehicles with capacity and rates
  • Service Management: Manage additional services and fees
  • Client Management: Handle client information and booking history
  • Payment Processing: Integrated Stripe payment processing
  • Distance Calculation: Google Maps integration for route planning and pricing

Database Support

  • Entity Framework Core integration
  • SQL Server database support
  • Comprehensive data models for all booking entities

Notification System

  • Email notifications for bookings, confirmations, and cancellations
  • SMS notifications through Twilio integration
  • Template-based messaging system

Dependencies

This library depends on:

  • Microsoft.EntityFrameworkCore: For data access
  • Microsoft.AspNetCore.Http: For web context
  • HtmlAgilityPack: For HTML processing
  • Stripe.net: For payment processing
  • Common Library: Net3000 common utilities
  • Content Library: Content management system integration
  • Google Services: For maps and directions
  • Twilio Service: For SMS notifications
  • NetLib: For Stripe payment integration (will be refactored out in future versions)

Getting Started

Installation

Add reference to this project in your application:

<ProjectReference Include="..\..\Class Libraries\limoCore\limo.csproj" />

Basic Usage

using net3000.limo;
using net3000.limo.models;

// Initialize the limo service
var limoService = new lib(); // Note: class will be renamed to LimoService in future version

// Configure database and settings
limoService.accountsDB = yourAccountsDB;
limoService.limoDB = yourLimoDB;
limoService.myConfiguration = yourConfiguration;
limoService.account = yourAccountId;

// Create a new reservation
var order = new orders
{
    pickupDate = DateTime.Now.AddDays(1),
    pickupLocationID = "place_id_pickup",
    dropOffLocationID = "place_id_dropoff",
    passengers = 4,
    email = "client@example.com",
    phone = "+1234567890"
};

// Save the reservation
var result = limoService.saveReservation(order);

Models

Key Entities

  • orders: Main booking entity
  • orderItems: Individual items within a booking
  • vehicles: Available vehicles
  • services: Additional services and fees
  • clients: Client information
  • addresses: Client address history
  • payments: Payment records

Configuration

The library uses a configuration system that includes:

  • Payment gateway settings
  • Service area limits
  • Email and SMS templates
  • Default rates and pricing

Migration from NetLib

This library was separated from the main NetLib to provide:

  • Better separation of concerns
  • Independent versioning
  • Reduced coupling
  • Easier maintenance and testing

Future Improvements

Planned Refactoring

  • Remove NetLib Dependency: Extract Stripe payment functionality to remove dependency on NetLib
  • Rename Main Class: Change lib class name to LimoService for better clarity
  • Interface Implementation: Add interfaces for better testability
  • Async Methods: Convert synchronous methods to async for better performance

Migration Path

The NetLib dependency is currently required for Stripe payment processing. Future versions will:

  1. Extract payment processing to a separate service
  2. Implement direct Stripe integration
  3. Remove NetLib dependency completely

Public API

Main Library Class

  • lib: Primary class containing all limo functionality
  • saveReservation(): Create and save new reservations
  • getOrders(): Retrieve booking list
  • getOrder(): Get specific booking details
  • sendNotifications(): Send booking notifications
  • chargeCreditCard(): Process payments

Usage Notes

  • Requires proper database configuration
  • Stripe keys needed for payment processing
  • Google API keys required for mapping functionality
  • Twilio configuration needed for SMS notifications

Version History

  • 1.0.0: Initial separated version from NetLib
  • Contains all original limo functionality
  • Updated dependencies to latest versions

License

This library is proprietary to Net3000. Redistribution or use outside Net3000.ca solutions is not permitted.

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.2 37 7/21/2026

1.0.2 — Initial published NuGet after decoupling from netlibCore (issue #1980). Payment interfaces from commonModels; ApiConnectionsDB from ServiceCoordinator. 1.0.1 — Drop public ProjectReference to netlibCore (applications#1971).