From a86c7b74aa74123d9898a796e4bf8f347987eb00 Mon Sep 17 00:00:00 2001 From: Matt Hills Date: Wed, 16 Apr 2025 21:48:00 -0400 Subject: [PATCH] doc organization --- PROJECT.md | 66 +++++++++++++++++++ README.md | 9 +++ .../CHUNKED_UPLOAD.md | 0 LARGE_UPLOAD.md => docs/LARGE_UPLOAD.md | 0 RELEASE_PROCESS.md => docs/RELEASE_PROCESS.md | 0 5 files changed, 75 insertions(+) create mode 100644 PROJECT.md rename README_CHUNKED_UPLOAD.md => docs/CHUNKED_UPLOAD.md (100%) rename LARGE_UPLOAD.md => docs/LARGE_UPLOAD.md (100%) rename RELEASE_PROCESS.md => docs/RELEASE_PROCESS.md (100%) diff --git a/PROJECT.md b/PROJECT.md new file mode 100644 index 0000000..58ab402 --- /dev/null +++ b/PROJECT.md @@ -0,0 +1,66 @@ +# SimpleLogUpload Project Documentation + +## Overview + +SimpleLogUpload is an Android application designed to upload log files to a server. It provides both standard and chunked upload capabilities to handle files of various sizes across different network conditions. + +## Documentation Structure + +This project follows specific documentation conventions: + +1. **Main documentation**: + - `README.md` - General project information and setup instructions + - `PROJECT.md` (this file) - Project structure and documentation guidelines + +2. **Feature documentation**: + - Each feature must have its own dedicated Markdown file in the `./docs` folder + - Feature documentation should thoroughly explain the implementation, usage, and any special considerations + +3. **Task tracking**: + - `TASK.md` - Contains ongoing tasks and development roadmap + +## Documentation Requirements + +### Feature Documentation Rule + +**IMPORTANT**: For each new feature added to the project, a corresponding Markdown file must be created in the `./docs` folder. This file should: + +1. Have a clear, descriptive filename (e.g., `FEATURE_NAME.md`) +2. Contain comprehensive documentation including: + - Feature overview and purpose + - Technical implementation details + - API descriptions (if applicable) + - Usage examples + - Configuration options + - Testing considerations + +### Current Feature Documentation + +The current feature documentation includes: + +- `docs/CHUNKED_UPLOAD.md` - Details on the chunked upload implementation +- `docs/LARGE_UPLOAD.md` - Analysis and improvements for large file uploads +- `docs/RELEASE_PROCESS.md` - Guidelines for the release process + +## Maintaining Documentation + +When modifying or extending existing features, ensure the corresponding documentation is updated to reflect the changes. Keep all documentation accurate and up-to-date with the current implementation. + +## Adding New Documentation + +To add documentation for a new feature: + +1. Create a new Markdown file in the `./docs` folder +2. Follow the naming convention `FEATURE_NAME.md` +3. Use clear sections and subsections for easy navigation +4. Include code examples where appropriate +5. Add links to the new documentation in other relevant documents + +## Documentation Standards + +All documentation should: +- Be clear and concise +- Include code examples where applicable +- Explain the "why" as well as the "how" +- Be kept up-to-date with code changes +- Follow a consistent format and style diff --git a/README.md b/README.md index 51d87f6..868db3a 100644 --- a/README.md +++ b/README.md @@ -48,6 +48,15 @@ Note - this requires that you leverage SimpleFileUpload-Server - Upload history filtering and search - QR code generation for quick sharing +## Documentation + +Detailed documentation about specific features and processes can be found in the `docs/` directory: + +- [Project Documentation](PROJECT.md) - Project structure and documentation guidelines +- [Chunked Upload](docs/CHUNKED_UPLOAD.md) - Implementation of chunked uploads for large files +- [Large File Upload Analysis](docs/LARGE_UPLOAD.md) - Analysis and improvements for large file uploads +- [Release Process](docs/RELEASE_PROCESS.md) - Detailed release process guidelines + ## Development and Releases ### Automated Releases with GitHub Actions diff --git a/README_CHUNKED_UPLOAD.md b/docs/CHUNKED_UPLOAD.md similarity index 100% rename from README_CHUNKED_UPLOAD.md rename to docs/CHUNKED_UPLOAD.md diff --git a/LARGE_UPLOAD.md b/docs/LARGE_UPLOAD.md similarity index 100% rename from LARGE_UPLOAD.md rename to docs/LARGE_UPLOAD.md diff --git a/RELEASE_PROCESS.md b/docs/RELEASE_PROCESS.md similarity index 100% rename from RELEASE_PROCESS.md rename to docs/RELEASE_PROCESS.md