Commit Graph

  • 468243c (HEAD -> master) Fix forgotten changes by tmeissner 2018-12-09 22:09:37 +0100
  • acd71f2 Chapter 13: Comment moderation (13b) by tmeissner 2018-12-02 22:06:25 +0100
  • 889522d Chapter 13: Blog post comments (13a) by tmeissner 2018-11-25 00:35:31 +0100
  • 639c61f Chapter 12: Self-followers (12e) by tmeissner 2018-11-24 22:46:14 +0100
  • 814cbfc Chapter 12: Show followed blog posts in home page (12d) by tmeissner 2018-11-24 18:57:16 +0100
  • 02e1980 Chapter 12: Followed posts with a join (12c) by tmeissner 2018-11-24 18:28:00 +0100
  • f357932 Chapter 12: Followers in the application (12b) by tmeissner 2018-11-24 01:13:23 +0100
  • 63f1022 Chapter 12: Database representaton of followers (12a) by tmeissner 2018-11-23 23:43:29 +0100
  • a482fe6 Chapter 11: Blog post editor (11h) by tmeissner 2018-11-20 23:49:00 +0100
  • 0dff7d0 Chapter 11: Permanent links to posts (11g) by tmeissner 2018-11-20 23:20:08 +0100
  • 44b9042 Chapter 11: Rich text server side handling with Markdown and Bleach (11f) by tmeissner 2018-11-18 01:24:26 +0100
  • f7110f6 Chapter 11: Rich text blog posts with Flask-PageDown (11e) by tmeissner 2018-11-18 00:28:52 +0100
  • 6c8890d Chapter 11: Blog post pagination (11d) by tmeissner 2018-11-17 23:42:57 +0100
  • 3c68168 Chapter 11: Generate fake users and posts (11c) by tmeissner 2018-11-17 22:16:09 +0100
  • c5b0236 Chapter 11: Blog posts in profile pages (11b) by tmeissner 2018-11-16 19:10:19 +0100
  • 9f056eb Chapter 11: Blog posts (11a) by tmeissner 2018-11-15 22:53:23 +0100
  • f905570 Chapter 10: Caching of user avatar hashes (10d) by tmeissner 2018-11-15 21:58:46 +0100
  • b2cbdef Chapter 10: User avatars (10c) by tmeissner 2018-11-14 00:07:44 +0100
  • c4274e3 Chapter 10: Profiles editor (10b) by tmeissner 2018-11-12 23:30:00 +0100
  • a7311a9 Chapter 10: User profiles (10a) by tmeissner 2018-11-11 00:06:29 +0100
  • e61ae9a Chapter 9: User roles and permissions (9a) by tmeissner 2018-11-09 00:04:54 +0100
  • 492e106 Chapter 8: Email address changes (8h) by tmeissner 2018-11-06 22:47:03 +0100
  • 3571a77 Chapter 8: Password resets (8g) by tmeissner 2018-11-05 23:42:00 +0100
  • b718cc2 Chapter 8: Password updates (8f) by tmeissner 2018-11-05 22:12:05 +0100
  • 330e5fb Chapter 8: Account confirmation (8e) by tmeissner 2018-11-05 00:07:07 +0100
  • 869a8b0 Chapter 8: User registration (8d) by tmeissner 2018-11-04 00:23:48 +0100
  • 115d1e1 Chapter 8: Login and logout with Flask-Login (8c) by tmeissner 2018-11-01 23:45:16 +0100
  • 927b411 Chapter 8: Authentication blueprint (8b) by tmeissner 2018-10-29 00:03:58 +0100
  • d16769a Chapter 8: Password hashing with Werkzeug (8a) by tmeissner 2018-10-28 23:27:13 +0100
  • e344f46 Chapter 7: Large file structure (7a) by tmeissner 2018-10-28 00:47:10 +0200
  • 88514c1 Chapter 6: Asynchronous emails (6b) by tmeissner 2018-10-21 00:18:21 +0200
  • 94e1dbe Chapter 6: Email support with Flask-Mail (6a) by tmeissner 2018-10-21 00:01:25 +0200
  • 7783c73 Chapter 5: Database migrations with Flask-Migrate (5d) by tmeissner 2018-10-19 21:23:06 +0200
  • da527b2 Chapter 5: Shell context (5c) by tmeissner 2018-10-17 21:48:32 +0200
  • 59c7e48 Chapter 5: Database use in the application (5b) by tmeissner 2018-10-17 21:40:58 +0200
  • be07b02 Chapter 5: Database models with Flask-SQLAlchemy (5a) by tmeissner 2018-10-16 21:43:47 +0200
  • c3385ab Chapter 4: Message flashing (4c) by tmeissner 2018-10-15 22:35:29 +0200
  • b79829c Chapter 4: Redirects and user sessions (4b) by tmeissner 2018-10-15 22:19:57 +0200
  • 1b2e374 Chapter 4: Web forms with Flask-WTF (4a) by tmeissner 2018-10-11 23:51:12 +0200
  • 5ffd385 Chapter 3: Dates and times with Flask-Moment (3e) by tmeissner 2018-10-11 22:20:38 +0200
  • 0498864 Chapter 3: Static files (3d) by tmeissner 2018-10-11 21:31:55 +0200
  • 7bc8516 Chapter 3: Custom error pages (3c) by tmeissner 2018-10-09 22:36:32 +0200
  • 48b7c03 Chapter 3: Templates with Flask-Bootstrap (3b) by tmeissner 2018-10-08 23:48:53 +0200
  • 02a1b34 Chapter 3: Templates (3a) by tmeissner 2018-10-08 22:15:14 +0200
  • d44cd70 Chapter 2: Dynamic routes (2b) by tmeissner 2018-10-07 23:05:08 +0200
  • 024f9b2 Chapter 2: A complete application (2a) by tmeissner 2018-10-07 22:30:55 +0200
  • abf38e3 Initial commit by tmeissner 2018-10-07 22:07:11 +0200