Directory structure¶
Pantra checks for directories relative to project path by default.
Note
Most of directories could be redeclared via configuration
- Structure details:
apps directory contains one or more applications
Configuration file in apps\config.py
components directory contains raw components
css directory - common CSS/SCSS files
cached directory is created by cache builder
Directories:
project
├── apps -- user applications base path,
│ ├── app1 subdirectory name -> app name -> HTTP relative path
│ ├── app2 app2 -> http://localhost:8005/app2
│ │ ├── static -- app static files base path (images, fonts, etc.)
│ │ │ ├── 1.jpg <img src:static="1.jpg">
│ │ │ ├── 2.jpg
│ │ │ └── photos -- static subdirectory
| │ │ └── me.png <img src:photos="me.png">
│ │ ├── storage -- session storage to store user settings
│ │ │ ├── common.dat ShelveDB adapter for this example
│ │ │ └── common.dir
│ │ ├── data -- database schema
│ │ │ ├── __init__.py -- `quazydb` tables
│ │ │ ├── __init__.pyi -- developer-friendly tables
│ │ │ └── databases.xml -- DB connection details
│ │ ├── locale -- Babel i18n language files
│ │ │ ├── ru_RU
│ │ │ └── zh_CN
│ │ ├── Comp1.html -- any custom components related to app
│ │ ├── Comp2.html
│ │ └── Main.html -- Main (starting) component of app
│ └── config.py -- custom engine configuration
├── css -- common SCSS/CSS files
│ ├── basic.scss compatible with @import directive
│ ├── common.scss <style type="text/scss">
│ ├── defaults.scss @import "css/defaults";
│ └── ... pre { color: $color-decoration; }
├── components -- comon components directory
│ ├── Dialogs
│ ├── Forms
│ │ ├── Button.html
│ │ ├── RadioBox.html
│ │ ├── SelectBox.html
│ │ └── ...
│ ├── Layout
│ ├── ...
│ ├── helpers -- common scripts for components
│ │ ├── dialogs.py
│ │ ├── layout.py
│ │ ├── widgets.py
│ │ └── ...
│ ├── locale -- Babel i18n language files
│ │ ├── ru_RU
│ │ └── zh_CN
│ ├── static -- common static files
│ │ ├── icons
│ │ └── images
│ ├── bootstrap.html -- main startup template
│ └── html5.dtd -- modified DTD schema for development purpose
└── cached -- generated cache directory
├── apps
├── core
├── css
├── helpers
├── js
├── static
└── bootstrap.html