Skip to content

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Repository files navigation

Django File Manager

A web-based file management application built entirely with Django (without Django REST Framework). This project allows users to register, log in, upload files, and manage file versions through a simple web interface and JSON-based views.


🚀 Features

  • User Authentication
    Secure user registration and login system using Django's built-in auth.

  • File Uploading
    Users can upload files to custom directory paths.

  • File Versioning
    New file versions are automatically created when changes are detected.

  • Content Change Detection
    The system uses SHA-256 hashing to avoid creating duplicate file versions.

  • File Downloads
    Any file version can be downloaded by the user.

  • Structured Views Returning JSON
    Instead of a REST framework, functionality is exposed via Django views that return JSON responses.

  • Directory Management
    Users can browse their custom file directories and view all uploads.


🗂️ Project Structure

The project includes the following Django apps:

  • accounts: Handles user registration and authentication.
  • files: Contains core models (File, Version) and the main upload/download logic.
  • api: Despite the name, it contains classic Django views (not DRF) that work with JSON requests/responses for dynamic behavior on the frontend.

🛠 Technologies Used

  • Python
  • Django
  • Pytest (for testing)

⚙️ Setup and Installation

1. Prerequisites

  • Python 3.x
  • pip (Python package installer)

2. Clone the Repository

git clone <your-repository-url>
cd FileManager

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages