A forensic examination of the MyEZTransfer backend's directory structure and file organization reveals a robust, modular architecture built primarily with **Python and Django**. This setup supports a wide range of financial services through distinct application components.

Core Django Project & Structure
  • `manage.py`: The Django project's command-line utility for administrative tasks.
  • `ewallet/` (Main Project Directory):
    • `settings.py`: Central configuration for the entire Django project.
    • `urls.py`: Main URL routing for the project, dispatching to individual app URLs.
    • `wsgi.py` / `asgi.py`: Entry points for web servers (WSGI for synchronous, ASGI for asynchronous).
  • `README.md`, `sorab.txt`: Project documentation and miscellaneous notes.
Backend Directory Structure (Accordion View)

Explore the core directory structure of the MyEZTransfer Backend application through an interactive accordion, providing a clearer view of its organization.

  • README.md
  • manage.py
  • sorab.txt
    • __init__.py
    • __pycache__/
    • admin.py
    • apps.py
    • migrations/
    • models.py
    • process.py
    • tests.py
    • urls.py
    • utils.py
    • views.py
    • __init__.py
    • __pycache__/
    • admin.py
    • apps.py
    • email.py
    • migrations/
    • models.py
    • serializer.py
    • tests.py
    • urls.py
    • utils.py
    • views.py
    • views.py.save
    • __init__.py
    • __pycache__/
    • admin.py
    • apps.py
    • migrations/
    • models.py
    • static/
    • templates/
    • tests.py
    • urls.py
    • urls.pyy
    • views.py
    • __init__.py
    • __pycache__/
    • asgi.py
    • settings.py
    • urls.py
    • wsgi.py
    • __init__.py
    • __pycache__/
    • admin.py
    • apps.py
    • migrations/
    • models.py
    • serializer.py
    • tests.py
    • urls.py
    • views.py
    • __init__.py
    • __pycache__/
    • admin.py
    • apps.py
    • migrations/
    • models.py
    • serializer.py
    • tests.py
    • urls.py
    • views.py
    • views.py.save
    • views.py.save.1
    • profile_image/ (contains image files)
    • __init__.py
    • __pycache__/
    • admin.py
    • apps.py
    • migrations/
    • models.py
    • serializer.py
    • tests.py
    • urls.py
    • views.py
    • __init__.py
    • __pycache__/
    • admin.py
    • apps.py
    • migrations/
    • models.py
    • serializer.py
    • tests.py
    • urls.py
    • views.py
    • __init__.py
    • __pycache__/
    • admin.py
    • apps.py
    • genrateAmlPdf.py
    • logo.png
    • migrations/
    • models.py
    • models.py.save
    • serializers.py
    • tests.py
    • urls.py
    • utils.py
    • views.py
    • __init__.py
    • __pycache__/
    • admin.py
    • apps.py
    • migrations/
    • models.py
    • serializers.py
    • tests.py
    • urls.py
    • views.py
    • views.py.save
    • admin/
    • images.zip
    • img/
    • js/
    • lib/
    • main.js
    • rest_framework/
    • scss/
    • __init__.py
    • __pycache__/
    • admin.py
    • apps.py
    • migrations/
    • models.py
    • serializer.py
    • tests.py
    • urls.py
    • views.py
    • LICENSE.txt
    • Mdashboard.html
    • Mhome.html
    • ... (many other .html files)
    • snippet/
    • style.css
    • typography.html
    • widget.html
    • __init__.py
    • __pycache__/
    • admin.py
    • apps.py
    • migrations/
    • models.py
    • serializer.py
    • tests.py
    • urls.py
    • views.py
Modular Application Domains (Django Apps)

The backend is organized into distinct Django applications, each handling specific business functionalities:

  • `UI/`: Likely contains Django views and templates related to the web-based user interface (Backoffice Admin Panel). Includes `process.py` and `utils.py` for UI-related logic.
  • `authentication/`: Manages user authentication, registration, login, password resets, and potentially OTP/email verification. Includes `email.py` for email functionalities.
  • `billing/`: Handles billing profiles, payment integrations (e.g., Stripe), and order management. Contains `templates/` for billing-related HTML pages.
  • `ewallet/`: (Likely the main e-wallet functionality, distinct from `myWallet`). Contains core project settings/URLs.
  • `insurance/`: Dedicated to insurance-related features and data.
  • `loan/`: Manages loan applications, approvals, and repayment processes.
  • `merchant/`: Implements functionalities specific to merchant accounts and services.
  • `moneyexchange/`: Handles currency exchange rates and transactions.
  • `myWallet/`: (Potentially the primary e-wallet application or a module closely related to `ewallet`). Contains `genrateAmlPdf.py` for AML document generation.
  • `payment/`: Focuses on payment processing logic, potentially integrating with external payment gateways.
  • `tax/`: Manages tax calculations and tax return functionalities.
  • `utilitybill/`: Handles utility bill payment services.
API, Data & Business Logic

Within each Django application, the following patterns and files are consistently observed for API endpoints, data modeling, and core business logic:

  • `models.py`: Defines database schemas using Django's ORM.
  • `migrations/`: Contains database schema migration files, managed by Django's ORM.
  • `views.py`: Implements API endpoints and web views (using Django REST Framework for APIs).
  • `urls.py`: Defines URL routing for the specific application's views.
  • `serializer.py` / `serializers.py`: Defines data serialization/deserialization for Django REST Framework APIs.
  • `admin.py`: Registers models with the Django Admin interface.
  • `tests.py`: Contains unit and integration tests for the application's logic.
  • `utils.py`: Houses utility functions and helper methods.
  • `process.py` (in `UI/`): Suggests dedicated files for complex processing logic.
  • `genrateAmlPdf.py` (in `myWallet/`): A specific example of a utility for generating AML documents.
Static Assets & Templates
  • `static/` directory: Contains static files (CSS, JavaScript, images) served directly by the web server (Nginx Proxy Manager in production).
    • `static/admin/`: Django's built-in admin static files (CSS, JS, fonts, images).
    • `static/css/`, `static/js/`, `static/images/`: Custom application-specific static assets.
    • `static/lib/`: Third-party JavaScript libraries (e.g., Chart.js, Owl Carousel, Tempus Dominus, Waypoints).
    • `static/rest_framework/`: Static files for Django REST Framework's browsable API.
    • `static/scss/`: Source for SCSS styling, compiled into CSS.
  • `templates/` directory: Houses Django HTML templates for rendering web pages.
    • Includes various HTML files for different sections of the Backoffice (e.g., `Mdashboard.html`, `adduser.html`, `history.html`, `walletToBank.html`).
    • `snippet/paginatorsnippet.html`: Example of reusable template snippets.
  • `media/` directory: Stores user-uploaded content (e.g., profile images).
Development & Operational Artifacts
  • `__pycache__/` directories: Contain compiled Python bytecode (`.pyc` files), generated during execution for faster loading.
  • `.py.save` files: Indicate temporary or backup files from text editors (e.g., `views.py.save`, `models.py.save`, `urls.pyy`). These should typically be excluded from version control.
  • `.git/` (Implied): While not in the provided tree, the presence of a `README.md` and a structured project suggests version control (likely Git) is in use.
  • `local.properties` (Implied): Often found in Android projects, but if this were a Django project root, it could indicate local environment settings.