App configurations

App configurations.

Config

class app.shared.config.BaseConfig

Bases: BaseSettings

Base configuration class managing core application environment settings.

Fields

Field

Type

Required

Default

APP_NAME

str

No

'SDCV API'

CONFIG

str

No

'DEBUG'

JWT_SECRET_KEY

str

No

'3xvX3jfKiSOoFFGVcIM5Hkd9o'

OPEN_API_V

str

No

'3.0.2'

SQLALCHEMY_DATABASE_URI

str

No

'sqlite:///test.db'

APP_NAME: str

The application name used across metadata and interfaces.

CONFIG: str

The configuration environment identifier string.

JWT_SECRET_KEY: str

The secret key used for signing JWT access tokens.

OPEN_API_V: str

The target OpenAPI specification version version string.

SQLALCHEMY_DATABASE_URI: str

The database connection URI string.

special_init(migrate, app, db)

Initializes core base application components and JWT configurations.

Parameters:
  • migrate – The Flask-Migrate extension instance.

  • app – The current Flask application instance.

  • db – The SQLAlchemy database instance.

class app.shared.config.DebugConfig

Bases: BaseConfig

Development configuration environment containing Swagger documentation and extended logging.

Fields

Field

Type

Required

Default

APP_NAME

str

No

'SDCV API'

CONFIG

str

No

'DEBUG'

JWT_SECRET_KEY

str

No

'3xvX3jfKiSOoFFGVcIM5Hkd9o'

OPEN_API_V

str

No

'3.0.2'

SQLALCHEMY_DATABASE_URI

str

No

'sqlite:///test.db'

CONFIG: str

The configuration environment identifier string set to debug mode.

SQLALCHEMY_DATABASE_URI: str

The database connection URI string used for debugging/testing.

special_init(migrate, app, db)

Sets up the application in debug mode, initializing Swagger UI and active logging structures.

Parameters:
  • migrate – The Flask-Migrate extension instance.

  • app – The current Flask application instance.

  • db – The SQLAlchemy database instance.

class app.shared.config.ProductConfig

Bases: BaseConfig

Production configuration environment optimized for stable system deployment.

Fields

Field

Type

Required

Default

APP_NAME

str

No

'SDCV API'

CONFIG

str

No

'PRODUCT'

JWT_SECRET_KEY

str

No

'3xvX3jfKiSOoFFGVcIM5Hkd9o'

OPEN_API_V

str

No

'3.0.2'

SQLALCHEMY_DATABASE_URI

str

No

'sqlite:///app.db'

CONFIG: str

The configuration environment identifier string set to production mode.

SQLALCHEMY_DATABASE_URI: str

The live production database connection URI string.

special_init(migrate, app, db)

Executes production-specific initialization logic.

Parameters:
  • migrate – The Flask-Migrate extension instance.

  • app – The current Flask application instance.

  • db – The SQLAlchemy database instance.

app.shared.config.config_factory(config)

Factory function matching a runtime configuration identifier string against active environments.

Parameters:

config (str) – The configuration environment code identifier (e.g. ‘DEBUG’, ‘PRODUCT’).

Returns:

A configuration subclass matching the specified identifier, defaulting to debug mode if unmatched.

Return type:

BaseConfig

app.shared.config.configs = [DebugConfig(SQLALCHEMY_DATABASE_URI='sqlite:///test.db', CONFIG='DEBUG', JWT_SECRET_KEY='3xvX3jfKiSOoFFGVcIM5Hkd9o', APP_NAME='SDCV API', OPEN_API_V='3.0.2'), ProductConfig(SQLALCHEMY_DATABASE_URI='sqlite:///app.db', CONFIG='DEBUG', JWT_SECRET_KEY='3xvX3jfKiSOoFFGVcIM5Hkd9o', APP_NAME='SDCV API', OPEN_API_V='3.0.2')]

A list of initialized configuration options available to the factory method.