Skip to content

runawaydevil/theskullcon

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TheSkullCon - File Converter

TheSkullCon Logo

Python Version License FastAPI Version FFmpeg Required

Developed by RunawayDevil © 2025

📝 Description

TheSkullCon is a modern web application for converting images and videos with a beautiful and intuitive interface. It supports a wide range of formats and provides real-time preview of files.

✨ Features

  • Image Conversion

    • Supported formats: JPG, JPEG, PNG, BMP, TIFF, WebP
    • High-quality conversion
    • Preserves image quality
  • Video Conversion

    • Supported formats: MP4, AVI, MOV, MKV, GIF
    • Optimized for web playback
    • Maintains video quality
  • Audio Conversion

    • Supported formats: MP3, WAV, OGG, FLAC, AAC, M4A
    • High-quality audio conversion
    • Preserves audio quality
  • User Experience

    • Drag and drop interface
    • Real-time file preview
    • Automatic download after conversion
    • Progress bar during conversion
    • Responsive design

🛠️ Technologies Used

Backend

  • FastAPI
  • FFmpeg
  • Pillow
  • Python-Magic
  • Filetype

Frontend

  • Bootstrap 5
  • Font Awesome
  • Jinja2 Templates
  • JavaScript

🚀 Installation

Requirements

  • Python 3.11 or higher
  • FFmpeg
  • Debian 12 (Bookworm) or compatible system

Step 1: Install System Dependencies

# Update system
sudo apt update && sudo apt upgrade -y

# Install Python and required packages
sudo apt install -y python3 python3-pip python3-venv ffmpeg

# Install FFmpeg
sudo apt install -y ffmpeg

Step 2: Clone and Setup Project

# Clone repository
git clone https://github.com/RunawayDevil/TheSkullCon.git
cd TheSkullCon

# Create virtual environment
python3 -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install dependencies
pip install -r requirements.txt

Step 3: Run the Application

# Start the server
uvicorn app.main:app --reload --port 8012

The application will be available at http://localhost:8012

📁 Project Structure

TheSkullCon/
├── app/
│   ├── static/
│   │   ├── images/
│   │   └── uploads/
│   ├── templates/
│   │   └── index.html
│   ├── services/
│   │   └── converter.py
│   ├── __init__.py
│   ├── config.py
│   └── main.py
├── requirements.txt
└── README.md

🔧 Configuration

The application can be configured by modifying the app/config.py file:

# Server settings
HOST = "0.0.0.0"
PORT = 8012
DEBUG = True

# Upload settings
MAX_CONTENT_LENGTH = 300 * 1024 * 1024  # 300MB
CLEANUP_INTERVAL = 3600  # 1 hour in seconds

🎯 Supported Formats

Images

  • JPG/JPEG
  • PNG
  • BMP
  • TIFF
  • WebP

Videos

  • MP4
  • AVI
  • MOV
  • MKV
  • GIF

Audio

  • MP3
  • WAV
  • OGG
  • FLAC
  • AAC
  • M4A

🔍 Troubleshooting

Common Issues

  1. FFmpeg not found

    sudo apt install ffmpeg
  2. Permission denied

    sudo chmod -R 755 app/static/uploads
  3. Port already in use

    # Find process using port 8012
    sudo lsof -i :8012
    
    # Kill the process
    sudo kill -9 <PID>

Running as a Service

Create a systemd service file:

sudo nano /etc/systemd/system/theskullcon.service

Add the following content:

[Unit]
Description=TheSkullCon File Converter
After=network.target

[Service]
User=your_user
WorkingDirectory=/path/to/TheSkullCon
ExecStart=/path/to/TheSkullCon/venv/bin/uvicorn app.main:app --host 0.0.0.0 --port 8012
Restart=always

[Install]
WantedBy=multi-user.target

Enable and start the service:

sudo systemctl enable theskullcon
sudo systemctl start theskullcon

🤝 Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

👨‍💻 Author

About

another file converter made in python

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors