Skip to content

Latest commit

 

History

History
 
 

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

Divemap Documentation

Welcome to the Divemap documentation. This directory contains comprehensive documentation for the Divemap scuba diving platform.

📚 Documentation Index

🚀 Getting Started

  • README.md - User onboarding and application usage guide

🔧 Development

🚀 Deployment

  • README.md - Comprehensive deployment guide (includes all deployment strategies, Docker, Fly.io, and infrastructure)
  • Fly.io.md - Detailed Fly.io deployment guide with advanced features

🛡️ Security

🔧 Maintenance

📋 Testing Strategy

📋 Quick Reference

For New Users

  1. Start with Getting Started for application usage and features

For Developers

  1. Development Overview - Development setup and workflow
  2. Architecture Documentation - System design and components
  3. API Documentation - API endpoints and usage
  4. Testing Guide - Testing procedures (see TESTING_STRATEGY.md for details)
  5. Docker Configuration - Container setup and optimization
  6. Phase 2: Map Integration - Interactive map visualization for dive trips
  7. Importing Data - Guide for importing dive sites and dives from Subsurface
  8. Rate Limiting Error Handling - Frontend error handling for API rate limits
  9. Sorting Implementation - Comprehensive sorting functionality and admin restrictions
  10. Floating Search and Filter Boxes - Implementation guide for floating search and filter boxes

For Deployment

  1. Deployment Overview - Comprehensive deployment guide (includes Docker, Fly.io, and infrastructure)
  2. Fly.io Guide - Advanced Fly.io deployment features and configuration
  3. Development Docker Guide - Development container configuration

For Security

  1. Security Overview - Security measures and best practices
  2. OAuth Setup - Authentication configuration

For Maintenance

  1. Maintenance Overview - Maintenance procedures and troubleshooting
  2. Database Migrations - Schema change management
  3. Changelog - Complete version history and API changes

🔗 Related Files

  • ../README.md - Main project overview
  • ../CHANGELOG.md - Application changelog

📝 Documentation Standards

All documentation should:

  • Include clear problem statements
  • Provide step-by-step solutions
  • Include testing procedures
  • Document security considerations
  • List all affected files
  • Include troubleshooting sections
  • Use consistent markdown formatting
  • Include table of contents for files > 100 lines

🚀 Current Status

Production URLs:

Recent Updates:

  • ✅ Phase 2: Map Integration and Visualization completed
  • ✅ Interactive map component for dive trips implemented
  • ✅ Database migration 0027: trip_difficulty_level nullable constraint fixed
  • ✅ Newsletter content enhancement in API responses
  • High Priority Documentation Consolidation Completed - Consolidated import documentation and Docker documentation
  • Import Documentation Consolidated - Merged 3 files (IMPORTING_DATA.md, import-subsurface-xml.md, subsurface-import-plan.md) into single comprehensive guide
  • Docker Documentation Consolidated - Merged docker-quick-reference.md into main deployment README
  • Documentation consolidation completed - Eliminated duplication between deployment and getting-started sections
  • Streamlined deployment documentation - Consolidated Docker, infrastructure, and deployment into single comprehensive guide
  • Refocused getting-started guide - Now focuses on user onboarding and application usage
  • Reduced deployment files - From 4 files to 2 files (main README + Fly.io guide)
  • ✅ Removed duplicate content across files
  • ✅ Streamlined testing documentation
  • ✅ Consolidated security measures
  • Sorting Implementation Complete - Comprehensive sorting across all entity types with admin restrictions
  • Difficulty Level System Converted - From ENUM strings to integers for better performance
  • Database Migration 0024 - Applied with comprehensive sorting indexes
  • ✅ Merged troubleshooting into maintenance guide
  • ✅ Reduced total documentation files from 22 to 16
  • ✅ Added comprehensive frontend rate limiting error handling documentation
  • ✅ Added diving organizations and user certifications documentation
  • ✅ Updated API documentation with new endpoints
  • ✅ Enhanced database documentation with new schema
  • ✅ Updated changelog with latest features
  • ✅ Added newsletter management system documentation
  • ✅ Integrated newsletter parsing and trip management features
  • ✅ Updated API docs with newsletter endpoints
  • ✅ Added ParsedDive and ParsedDiveTrip models to database docs
  • ✅ Enhanced rate limiting documentation with localhost and admin exemptions
  • ✅ Added count endpoints for dive sites, dives, and diving centers
  • ✅ Implemented random selection for dive sites with total count display
  • ✅ Updated security documentation with new rate limiting implementation
  • ✅ Added rate limiting section to development documentation
  • ✅ Implemented dive site aliases system with full CRUD operations
  • ✅ Enhanced newsletter parsing with aliases-based dive site matching
  • ✅ Updated database schema with dive_site_aliases table
  • ✅ Added comprehensive aliases documentation and testing coverage

📊 Documentation Categories

Getting Started (1 file)

  • User onboarding and application usage guide

Development (7 files)

  • Architecture, API, database, testing, newsletter management, development workflow, and comprehensive import guide

Deployment (2 files)

  • Comprehensive deployment guide (includes Docker quick reference) and advanced Fly.io features

Security (2 files)

  • Security measures and OAuth setup (consolidated)

Maintenance (3 files)

  • Migrations, changelog, and consolidated maintenance/troubleshooting

Testing Strategy (1 file)

  • Comprehensive testing strategy and procedures

Total Documentation Files: 16 (reduced from 18)

🔄 Consolidation Summary

Files Removed

  • docs/IMPORTING_DATA.md - Content merged into comprehensive import guide
  • docs/import-subsurface-xml.md - Content merged into comprehensive import guide
  • docs/development/subsurface-import-plan.md - Content merged into comprehensive import guide
  • docs/development/docker-quick-reference.md - Content merged into deployment README
  • docs/deployment/docker.md - Content merged into deployment README
  • docs/deployment/infrastructure.md - Content merged into deployment README
  • docs/security/measures.md - Content merged into security README
  • docs/maintenance/troubleshooting.md - Content merged into maintenance README

Files Streamlined

  • docs/development/testing.md - Now references comprehensive TESTING_STRATEGY.md
  • docs/getting-started/README.md - Focused on user onboarding, technical details moved to deployment
  • docs/security/README.md - Consolidated security measures and audit results
  • docs/maintenance/README.md - Merged troubleshooting procedures
  • docs/deployment/README.md - Consolidated Docker, infrastructure, and deployment information
  • docs/development/importing-data.md - Comprehensive import guide consolidating 3 previous files

Benefits Achieved

  • Reduced Redundancy: Eliminated duplicate content across files
  • Improved Clarity: Each file now has a clear, focused purpose
  • Better Organization: Related content grouped logically
  • Easier Maintenance: Fewer files to update and maintain
  • Clearer Navigation: Users can find information more quickly
  • Streamlined Deployment: Single comprehensive deployment guide
  • User-Focused Getting Started: Clear separation between user onboarding and technical deployment
  • Comprehensive Import Guide: Single source of truth for all import operations
  • Consolidated Docker Reference: All Docker information in one place