|
6 | 6 | BASE_DIR = './tempcontent/pages/' |
7 | 7 | BASE_FSP = "https://www.fullstackpython.com/" |
8 | 8 |
|
9 | | -links = {"/introduction.html": |
| 9 | +links = {# chapter 1 |
| 10 | + "/introduction.html": |
10 | 11 | "#introduction", |
11 | 12 | "/learning-programming.html": |
12 | 13 | "#learning-programming", |
|
29 | 30 | "/best-python-podcasts.html": |
30 | 31 | "#best-python-podcasts", |
31 | 32 |
|
| 33 | + # chapter 2 |
32 | 34 | "/development-environments.html": |
33 | 35 | "#development-environments", |
34 | 36 | "/vim.html": |
|
37 | 39 | "#emacs", |
38 | 40 | "/sublime-text.html": |
39 | 41 | "#sublime-text", |
| 42 | + "/pycharm.html": |
| 43 | + "#pycharm", |
| 44 | + "/jupyter-notebook.html": |
| 45 | + "#jupyter-notebook", |
| 46 | + "/shells.html": |
| 47 | + "#shells", |
| 48 | + "/bourne-again-shell-bash.html": |
| 49 | + "#bourne-again-shell-bash", |
| 50 | + "/zsh-shell.html": |
| 51 | + "#zsh", |
| 52 | + "/powershell.html": |
| 53 | + "#powershell", |
| 54 | + "/terminal-multiplexers.html": |
| 55 | + "#terminal-multiplexers", |
| 56 | + "/tmux.html": |
| 57 | + "#tmux", |
| 58 | + "/screen.html": |
| 59 | + "#screen", |
| 60 | + "/pymux.html": |
| 61 | + "#pymux", |
| 62 | + "/environment-configuration.html": |
| 63 | + "#environment-configuration", |
| 64 | + "/application-dependencies.html": |
| 65 | + "#application-dependencies", |
| 66 | + "/virtual-environments-virtualenvs-venvs.html": |
| 67 | + "#virtual-environments-virtualenvs", |
| 68 | + "/environment-variables.html": |
| 69 | + "#environment-variables", |
| 70 | + "/localhost-tunnels.html": |
| 71 | + "#localhost-tunnels", |
| 72 | + "/source-control.html": |
| 73 | + "#source-control", |
| 74 | + "/git.html": |
| 75 | + "#git", |
| 76 | + "/mercurial.html": |
| 77 | + "#mercurial", |
| 78 | + "/apache-subversion.html": |
| 79 | + "#apache-subversion", |
| 80 | + "/hosted-source-control-services.html": |
| 81 | + "#hosted-source-control-services", |
| 82 | + "/github.html": |
| 83 | + "#github", |
| 84 | + "/bitbucket.html": |
| 85 | + "#bitbucket", |
| 86 | + "/gitlab.html": |
| 87 | + "#gitlab", |
| 88 | + |
| 89 | + # chapter 3 |
| 90 | + "/data.html": |
| 91 | + "#data", |
| 92 | + "/databases.html": |
| 93 | + "#relational-databases", |
| 94 | + "/no-sql-datastore.html": |
| 95 | + "#nosql-data-stores", |
| 96 | + "/object-relational-mappers-orms.html": |
| 97 | + "#object-relational-mappers-orms", |
| 98 | + "/postgresql.html": |
| 99 | + "#postgresql", |
| 100 | + "/mysql.html": |
| 101 | + "#mysql", |
| 102 | + "/sqlite.html": |
| 103 | + "#sqlite", |
40 | 104 |
|
| 105 | + # chapter 4 |
41 | 106 | "/web-development.html": |
42 | | - "../04-web-development/01-web-development.markdown", |
| 107 | + "#web-development", |
43 | 108 | "/web-frameworks.html": |
44 | | - "../04-web-development/02-web-frameworks.markdown", |
| 109 | + "#web-frameworks", |
45 | 110 | "/django.html": |
46 | | - "../04-web-development/03-django.markdown", |
| 111 | + "#django", |
47 | 112 | "/flask.html": |
48 | | - "../04-web-development/04-flask.markdown", |
| 113 | + "#flask", |
49 | 114 | "/bottle.html": |
50 | 115 | "../04-web-development/05-bottle.markdown", |
51 | 116 | "/pyramid.html": |
|
70 | 135 | "../04-web-development/16-static-site-generator.markdown", |
71 | 136 | "/jinja2.html": |
72 | 137 | "../04-web-development/17-jinja2.markdown", |
73 | | - |
74 | | - "/data.html": |
75 | | - "../05-data/01-data.markdown", |
76 | | - "/databases.html": |
77 | | - "../05-data/02-databases.markdown", |
78 | | - "/no-sql-datastore.html": |
79 | | - "../05-data/03-nosql.markdown", |
80 | | - "/object-relational-mappers-orms.html": |
81 | | - "../05-data/04-object-relational-mappers.markdown", |
82 | | - "/postgresql.html": |
83 | | - "../05-data/05-postgresql.markdown", |
84 | | - "/mysql.html": |
85 | | - "../05-data/06-mysql.markdown", |
86 | | - "/sqlite.html": |
87 | | - "../05-data/07-sqlite.markdown", |
88 | | - |
| 138 | + "/testing.html": |
| 139 | + "../08-testing/01-testing.markdown", |
| 140 | + "/unit-testing.html": |
| 141 | + "../08-testing/02-unit-testing.markdown", |
| 142 | + "/integration-testing.html": |
| 143 | + "../08-testing/03-integration-testing.markdown", |
| 144 | + "/code-metrics.html": |
| 145 | + "../08-testing/05-code-metrics.markdown", |
| 146 | + "/debugging.html": |
| 147 | + "../08-testing/08-debugging.markdown", |
89 | 148 | "/application-programming-interfaces.html": |
90 | 149 | "../06-web-apis/01-application-programming-interfaces.markdown", |
91 | 150 | "/api-integration.html": |
92 | 151 | "../06-web-apis/02-api-integration.markdown", |
93 | 152 | "/api-creation.html": |
94 | 153 | "../06-web-apis/03-api-creation.markdown", |
95 | 154 |
|
| 155 | + # chapter 5 |
96 | 156 | "/deployment.html": |
97 | 157 | "../07-web-app-deployment/01-deployment.markdown", |
98 | 158 | "/servers.html": |
|
117 | 177 | "../07-web-app-deployment/12-configuration-management.markdown", |
118 | 178 | "/continuous-integration.html": |
119 | 179 | "../07-web-app-deployment/13-continuous-integration.markdown", |
120 | | - "/logging.html": |
121 | | - "../07-web-app-deployment/14-logging.markdown", |
122 | | - "/monitoring.html": |
123 | | - "../07-web-app-deployment/15-monitoring.markdown", |
124 | 180 | "/web-analytics.html": |
125 | 181 | "../07-web-app-deployment/16-web-analytics.markdown", |
126 | 182 | "/docker.html": |
|
129 | 185 | "../07-web-app-deployment/18-caching.markdown", |
130 | 186 | "/microservices.html": |
131 | 187 | "../07-web-app-deployment/19-microservices.markdown", |
132 | | - "/devops.html": |
133 | | - "../07-web-app-deployment/20-devops.markdown", |
134 | 188 | "/nginx.html": |
135 | 189 | "../07-web-app-deployment/21-nginx.markdown", |
136 | 190 | "/apache-http-server.html": |
|
140 | 194 | "/green-unicorn-gunicorn.html": |
141 | 195 | "../07-web-app-deployment/24-gunicorn.markdown", |
142 | 196 |
|
| 197 | + # chapter 6 |
| 198 | + "/devops.html": |
| 199 | + "../07-web-app-deployment/20-devops.markdown", |
| 200 | + "/logging.html": |
| 201 | + "../07-web-app-deployment/14-logging.markdown", |
| 202 | + "/monitoring.html": |
| 203 | + "../07-web-app-deployment/15-monitoring.markdown", |
143 | 204 |
|
144 | | - "/testing.html": |
145 | | - "../08-testing/01-testing.markdown", |
146 | | - "/unit-testing.html": |
147 | | - "../08-testing/02-unit-testing.markdown", |
148 | | - "/integration-testing.html": |
149 | | - "../08-testing/03-integration-testing.markdown", |
150 | | - "/code-metrics.html": |
151 | | - "../08-testing/05-code-metrics.markdown", |
152 | | - "/debugging.html": |
153 | | - "../08-testing/08-debugging.markdown", |
154 | | - |
| 205 | + # meta (chapter 7) |
155 | 206 | "/what-full-stack-means.html": |
156 | | - "../13-meta/01-what-full-stack-means.markdown", |
| 207 | + "#what-full-stack-means", |
| 208 | + "/about-author.html": |
| 209 | + "#about-author", |
157 | 210 | "/change-log.html": |
158 | | - "../13-meta/02-change-log.markdown", |
| 211 | + BASE_FSP + "change-log.html", |
159 | 212 | "/future-directions.html": |
160 | | - "../13-meta/03-future-directions.markdown", |
161 | | - "/about-author.html": |
162 | | - "../13-meta/04-about-author.markdown", |
| 213 | + BASE_FSP + "future-directions.html", |
163 | 214 |
|
164 | 215 | "/email.html": |
165 | 216 | BASE_FSP + "email.html", |
|
0 commit comments