Lighthouse API

Lighthouse API is the comprehensive backend service for the Lighthouse lending management platform developed by ClearVision Software. This robust API powers loan origination, servicing, and account management operations for financial institutions. Built with modern .NET technologies, the API provides secure, scalable endpoints for managing the entire lending lifecycle with real-time collaboration capabilities.
Getting Started
Prerequisites
- .NET 9.0 SDK
- Firebase project with Firestore enabled
Configuration
- Add your Firebase configuration to
appsettings.json
- Set up your Firebase service account credentials
Running the Application
Quick Start with Script
The easiest way to run the API with different logging levels:
chmod +x run-api.sh
./run-api.sh
./run-api.sh quiet
./run-api.sh verbose
./run-api.sh debug
./run-api.sh api-debug
./run-api.sh help
Manual Commands
You can also run the API directly with dotnet:
dotnet run
dotnet run --quiet
dotnet run --verbose
dotnet run --requestlog
dotnet run --verbose --requestlog
Logging System
Available Logging Flags
--requestlog: Enables detailed HTTP request and response logging
--verbose: Enables detailed logging for all application components
--quiet: Reduces logging to warnings and errors only
Logging Levels by Component
| Application | Information | Debug | Warning |
| Microsoft.* | Warning | Information | Warning |
| System.* | Warning | Information | Warning |
| Authentication | Information | Debug | Warning |
| Repositories | Information | Debug | Warning |
| Firebase | Information | Debug | Warning |
Example Outputs
Standard Mode:
[14:30:15 INF] Logging level: Information
[14:30:15 INF] Request logging: Disabled
[14:30:15 INF] Starting ClearVision Lighthouse API...
Verbose Mode:
[14:30:15 INF] Logging level: Debug (Verbose mode enabled)
[14:30:15 INF] Request logging: Disabled
[14:30:15 DBG] Firebase client initialized
[14:30:15 DBG] Repository dependencies configured
Quiet Mode:
[14:30:15 INF] Logging level: Warning (Quiet mode enabled)
[14:30:15 INF] Request logging: Disabled
API Documentation
Once running, visit:
- Swagger UI:
http://localhost:5199/swagger
- API Explorer:
http://localhost:5199/swagger/v1/swagger.json
Development
Building
dotnet build
Testing
dotnet test
Project Structure
lighthouse-api/
├── Controllers/ # API endpoints
├── Services/ # Business logic
├── Repositories/ # Data access layer
├── Models/ # Data models
├── Middleware/ # Custom middleware
├── Authentication/ # Auth services
└── Program.cs # Application entry point
Features
- Real-time collaboration
- Firebase Firestore integration
- JWT authentication
- Comprehensive logging system
- Request/response middleware
- Swagger documentation
Troubleshooting
Common Issues
Port already in use:
dotnet run --urls "http://localhost:5299"
Too much logging output:
./run-api.sh quiet
Need to debug API requests:
./run-api.sh api-debug
General debugging:
./run-api.sh debug
For detailed logging documentation, see README_RequestLogging.md.
License
Proprietary Software - ClearVision Software
This software is licensed for use exclusively by ClearVision Software clients and partners. Unauthorized distribution, modification, or use is strictly prohibited.