feat: Add comprehensive documentation suite and reorganize project structure

- Created complete documentation in docs/ directory
- Added PROJECT_OVERVIEW.md with feature highlights and getting started guide
- Added ARCHITECTURE.md with system design and technical details
- Added SECURITY.md with comprehensive security implementation guide
- Added DEVELOPMENT.md with development workflows and best practices
- Added DEPLOYMENT.md with production deployment instructions
- Added API.md with complete REST API documentation
- Added CONTRIBUTING.md with contribution guidelines
- Added CHANGELOG.md with version history and migration notes
- Reorganized all documentation files into docs/ directory for better organization
- Updated README.md with proper documentation links and quick navigation
- Enhanced project structure with professional documentation standards
This commit is contained in:
SamiAhmed7777
2025-10-21 00:39:45 -07:00
commit 0b7e2d0a5b
6080 changed files with 1332936 additions and 0 deletions

73
Dockerfile.test Normal file
View File

@@ -0,0 +1,73 @@
FROM php:8.2-fpm-alpine
# Install system dependencies
RUN apk add --no-cache \
git \
curl \
libpng-dev \
libxml2-dev \
zip \
unzip \
mariadb-client \
redis \
ffmpeg \
imagemagick \
imagemagick-dev
# Install PHP extensions
RUN docker-php-ext-install \
pdo_mysql \
mysqli \
gd \
xml \
mbstring \
intl \
opcache
# Install Redis extension
RUN pecl install redis && docker-php-ext-enable redis
# Install ImageMagick extension
RUN pecl install imagick && docker-php-ext-enable imagick
# Install Xdebug for code coverage
RUN pecl install xdebug && docker-php-ext-enable xdebug
# Configure Xdebug for coverage
RUN echo "xdebug.mode=coverage" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini
# Install Composer
COPY --from=composer:latest /usr/bin/composer /usr/bin/composer
# Set working directory
WORKDIR /srv/easystream
# Copy composer files
COPY composer.json composer.lock* ./
# Install PHP dependencies
RUN composer install --no-scripts --no-autoloader --prefer-dist
# Copy application code
COPY . .
# Generate autoloader
RUN composer dump-autoload --optimize
# Set permissions
RUN chown -R www-data:www-data /srv/easystream \
&& chmod -R 755 /srv/easystream \
&& chmod -R 777 /srv/easystream/f_data
# Create test directories
RUN mkdir -p /srv/easystream/tests/temp \
&& mkdir -p /srv/easystream/tests/fixtures \
&& mkdir -p /srv/easystream/tests/coverage \
&& mkdir -p /srv/easystream/tests/results \
&& chown -R www-data:www-data /srv/easystream/tests
USER www-data
EXPOSE 9000
CMD ["php-fpm"]