🎯 Popular course

Markup for Backend Developers

Build DevBlog — a developer blog — with HTML, CSS, Bootstrap, and Django Templates in 5 lessons.

5.0⭐ Rating
5 Lessons
65 Tasks
~21.7 h Duration
📚 Course program

What you will learn

Detailed course program with practical assignments and projects

📖

About the course

🎨 Build pages that users actually see

You already know Python and can work with APIs. The next step is HTML and CSS: this is where code becomes something visible. This course builds one project — DevBlog, a developer blog — from bare HTML to Django templates.

In this course you’ll build DevBlog in 5 lessons:
- HTML skeleton: semantic tags, navigation, multi-page site
- CSS styling: colours, typography, Flexbox, responsive design
- Forms: login and registration with HTML5 validation
- Bootstrap: grid, ready-made components, utility classes
- Django templates: inheritance, tags, filters, static files

Course stack:

HTML5 · CSS3 · Bootstrap 5 · Django Templates · Bootstrap Icons

Requirements:

Basic Python and familiarity with Django at the “run the dev server” level. Everything else is explained in the course.

🔒

Lesson 1: HTML — the skeleton of a DevBlog page

Create a repository, build the HTML structure of the DevBlog home page, and submit it …

⏱️ ~4 h 20 min 📚 13 tasks
🔒

Lesson 2: CSS — styling DevBlog

Create style.css, link it to index.html, and turn the HTML skeleton into a polished page …

⏱️ ~4 h 20 min 📚 13 tasks
🔒

Lesson 3: Forms — login.html and register.html

Add login and registration pages to DevBlog with validation, styles, and navigation between them.

⏱️ ~4 h 20 min 📚 13 tasks
🔒

Lesson 4: Bootstrap — refactoring DevBlog

Connect Bootstrap and rewrite all three DevBlog pages using ready-made components and the grid.

⏱️ ~4 h 20 min 📚 13 tasks
🔒

Lesson 5: Django templates — bringing DevBlog to life

Move all DevBlog pages into Django templates: base.html, home.html, login.html, register.html with inheritance and tags.

⏱️ ~4 h 20 min 📚 13 tasks

Student reviews

No reviews yet. They will appear when students start taking the course and sharing their learning experience.

💻 Code examples from course

Learn with real examples

See what code you will write in the course

lesson_example.py
# Создаем класс для курса
class Course:
    def __init__(self, title, duration):
        self.title = title
        self.duration = duration
        self.students = []
    def enroll_student(self, student):
        self.students.append(student)
        return f"Добро пожаловать, {student}!"
interactive_app.js
// Интерактивное обучение
const learningApp = {
  courses: [],
  support: 'в день',
  practice: '100%',
  addCourse(course) {
    this.courses.push(course);
    console.log(`Курс ${course} добавлен!`);
  }
};

Ready to start learning?

Join the growing community of students who have already started changing their lives through this course. Get personalized support and practical skills.