> For the complete documentation index, see [llms.txt](https://gramhal.gitbook.io/matar/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://gramhal.gitbook.io/matar/developer-reference/db-tables-and-structure/code-structure.md).

# Code Structure

### Matar Repo : [Link](https://github.com/Gramhal-Foundation/matar/tree/main)

***

{% code fullWidth="false" %}

```shell
Here is a code structure :

--.vs code(directory) 
-- apis(directory)
  --web(directory)
    - _init_.py
-- migrations(directory)
  --versions(directory)
    - alembic.ini
    - env.py
    - script.py.mako
-- models(directory)
    - _init_.py
    - base.py
    - db.py
    - helper_tables.py
    - user.py
-- scripts/aws_cli(directory)
    -  logsUpload.py
-- utils(directory)
    - authentication.py(Define Authentication Functions)
    - common_functions.py
    - constants.py
    - general_config.py
    - push_notification.py
    - sms.py
    - template_data.py
--. docker.ignore(file)(Ignore files and folders when building a Docker Image)
-- .env.example(file)
-- .gitignore(file)
-- Dockerfile(file)
-- Procfile(file)(Procfile specifies commands to execute upon startup)
-- aud1.m4a(file)(Sample audio file for app testing.)
-- app.py(file) (Initialize and create databases)
-- app_config.py(file)(Initialize Celery server for message processing) 
-- app_factory.py(file)
-- db.py(file)(import SQLAlchemy library- datsbase toolkit for python)
-- docker-compose.yml(environment build variable for redis database)
-- entry.sh (///)
-- environment.yml(all python dependencies that has to be used)
-- extensions.py(Using Redis as a blacklist store for access tokens)
-- flask_celery.py(Handle asynchronous Tasks with Flask and Celery) 
-- generic_scripts.py -->(Contains data parsing scripts)           
-- jwt_callbacks.py (Contains Callback functions for custom jwt responses) 
-- requirements.txt (Configuration file for python packages)
-- run.py()
```

{% endcode %}
