Time tracking you can host anywhere, built on Django. Full export support in multiple formats and easily extensible.
djangodockerhandcodedpythonself-hostedtime-trackingtimetracker
1from .base import * # noqa: F401,F403
2import os
3
4
5DEBUG = False
6
7
8# SECURITY WARNING: keep the secret key used in production secret!
9
10SECRET_KEY = os.environ["SECRET_KEY"] # noqa: F405
11
12
13# SECURITY WARNING: set this to your domain name in production!
14
15ALLOWED_HOSTS = ["*"]
16
17
18# Database
19# https://docs.djangoproject.com/en/2.0/ref/settings/#databases
20
21DATABASES = {
22 "default": {
23 "ENGINE": "django.db.backends.postgresql",
24 "NAME": os.environ.get("POSTGRES_DB", "postgres"),
25 "USER": os.environ.get("POSTGRES_USER", "postgres"),
26 "HOST": os.environ.get("POSTGRES_HOST", "db"),
27 "PORT": int(os.environ.get("POSTGRES_PORT", "5432")),
28 "PASSWORD": os.environ.get("POSTGRES_PASSWORD", "postgres"),
29 }
30}
31
32
33# Channels
34# https://channels.readthedocs.io/en/latest/
35
36CHANNEL_LAYERS = {
37 "default": {
38 "BACKEND": "channels_redis.core.RedisChannelLayer",
39 "CONFIG": {
40 "hosts": [
41 (os.environ.get("REDIS_HOST", "redis"), int(os.environ.get("REDIS_PORT", "6379")))
42 ]
43 },
44 }
45}
46
47
48# Email
49
50if os.environ.get("EMAIL_HOST"): # noqa: E501,F405
51 EMAIL_HOST = os.environ.get("EMAIL_HOST") # noqa: F405
52 EMAIL_HOST_USER = os.environ.get("EMAIL_HOST_USER") # noqa: F405
53 EMAIL_HOST_PASSWORD = os.environ.get("EMAIL_HOST_PASSWORD") # noqa: F405
54 EMAIL_PORT = int(os.environ.get("EMAIL_PORT", 25)) # noqa: F405
55 EMAIL_USE_TLS = bool(os.environ.get("EMAIL_USE_TLS", False)) # noqa: F405
56else:
57 EMAIL_BACKEND = "django.core.mail.backends.console.EmailBackend"
58 EMAIL_ENABLED = False