mirror of
https://github.com/DumbWareio/DumbDrop.git
synced 2025-10-22 23:31:57 +00:00
Chores & Configuration • Enhanced development setup: optimized Dockerfile, refined scripts, and improved .gitignore. • Updated docker-compose for better dev/prod separation. • Improved documentation in README and source files. Features & Enhancements • Refactored project structure with modular architecture. • Improved testing infrastructure and integration tests. • Enhanced file upload logic, client-side handling, and API routes. • Implemented robust server shutdown, rate limiting, and cleanup mechanisms. • Improved upload progress tracking with UI enhancements. • Strengthened security in PIN authentication and cookie handling. Refactors & Fixes • Cleaned up test infrastructure, logging, and error handling. • Simplified API route paths and improved middleware. • Fixed incorrect total storage size reporting. • Optimized logging verbosity based on environment. Documentation • Expanded project documentation and comments for clarity.
1.8 KiB
1.8 KiB
DumbDrop Development Guide
Quick Start
-
Clone the repository:
git clone https://github.com/yourusername/DumbDrop.git cd DumbDrop
-
Set up development environment:
cd dev cp .env.dev.example .env.dev
-
Start development server:
docker-compose -f docker-compose.dev.yml up
The application will be available at http://localhost:3000 with hot-reloading enabled.
Development Environment Features
- Hot-reloading with nodemon
- Development-specific environment variables
- Local file storage in
../local_uploads
- Debug logging enabled
- Development-specific notifications
Project Structure
DumbDrop/
├── dev/ # Development configurations
│ ├── docker-compose.dev.yml
│ ├── .env.dev.example
│ └── README.md
├── src/ # Application source code
├── public/ # Static assets
├── local_uploads/ # Development file storage
└── [Production files in root]
Development Workflow
-
Create feature branches from
main
:git checkout -b feature/your-feature-name
-
Make changes and test locally
-
Commit using conventional commits:
feat: add new feature fix: resolve bug docs: update documentation
-
Push and create pull request
Debugging
- Use
DEBUG=dumbdrop:*
for detailed logs - Container shell access:
docker-compose -f docker-compose.dev.yml exec app sh
- Logs:
docker-compose -f docker-compose.dev.yml logs -f app
Common Issues
- Port conflicts: Change port in
.env.dev
- File permissions: Ensure proper ownership of
local_uploads
- Node modules: Remove and rebuild with
docker-compose -f docker-compose.dev.yml build --no-cache