FI:PB138 Web Dev and Markup Languages - Course Information
PB138 Basics of Web Development and Markup Languages
Faculty of InformaticsSpring 2026
- Extent and Intensity
- 2/2/0. 3 credit(s) (plus extra credits for completion). Recommended Type of Completion: zk (examination). Other types of completion: z (credit).
In-person direct teaching - Teacher(s)
- Mgr. Luděk Bártek, Ph.D. (lecturer)
Ing. Petr Wehrenberg (lecturer)
Filip Kaštovský (lecturer)
Bc. Tomáš Sedláček (lecturer)
Ing. Lukáš Grolig (lecturer)
Mgr. Matej Hakoš (seminar tutor)
Bc. Ondřej Planer (seminar tutor)
Ing. Adam Zálešák (seminar tutor)
Mgr. Jakub Žovák (seminar tutor)
Mgr. Ondrej Kužlík (seminar tutor)
Bc. Lucia Marušinová (seminar tutor)
Bc. Jakub Uličný (seminar tutor)
RNDr. Samuel Pastva, Ph.D. (lecturer) - Guaranteed by
- RNDr. Samuel Pastva, Ph.D.
Department of Computer Systems and Communications – Faculty of Informatics
Contact Person: RNDr. Samuel Pastva, Ph.D.
Supplier department: Department of Computer Systems and Communications – Faculty of Informatics - Timetable
- Mon 16. 2. to Mon 11. 5. Mon 18:00–19:50 KOM 200
- Timetable of Seminar Groups:
PB138/02: Thu 19. 2. to Thu 14. 5. Thu 18:00–19:50 A218, F. Kaštovský
PB138/03: Thu 19. 2. to Thu 14. 5. Thu 18:00–19:50 A321, A. Zálešák
PB138/04: Tue 17. 2. to Tue 12. 5. Tue 8:00–9:50 C122, O. Planer
PB138/06: Thu 19. 2. to Thu 14. 5. Thu 16:00–17:50 A215, M. Hakoš
PB138/07: Tue 17. 2. to Tue 12. 5. Tue 18:00–19:50 C119, J. Žovák
PB138/08: Thu 19. 2. to Thu 14. 5. Thu 16:00–17:50 C119, O. Kužlík
PB138/09: Thu 19. 2. to Thu 14. 5. Thu 18:00–19:50 C408, L. Marušinová, J. Uličný - Prerequisites
- Basic knowledge of formal languages and some experience in OO programming, such as in Java, C++, C# or ECMAScript, as well as experience with a functional programming language, such as Haskell, and basic knowledge of database systems (SQL, DBMS) is required. Moreover, basic orientation in a markup language (HTML) and Internet services is also required.
- Course Enrolment Limitations
- The course is also offered to the students of the fields other than those the course is directly associated with.
The capacity limit for the course is 200 student(s).
Current registration and enrolment status: enrolled: 199/200, only registered: 2/200, only registered with preference (fields directly associated with the programme): 0/200 - fields of study / plans the course is directly associated with
- there are 45 fields of study the course is directly associated with, display
- Abstract
- The subject acquaints students with basic standards and principles of working with technologies of modern markup languages mainly based on XML, HTML and YAML. Students will also learn about data representation in JSON format. Upon successful completion of this course, students will create modern applications written in TypeScript using React and modern markup languages that retrieve data from the backend using REST interfaces or GraphQL.
- Learning outcomes
- Students will be able to:
Explain the advantages, disadvantages and purpose of tagged data and documents
Actively use the terminology of markup languages
Choose the appropriate markup language for the application
Actively use XML
Describe the characteristics of Internet technologies such as HTML 5, JavaScript, React, JSON, GraphQL and other modern web standards and use them in real applications
Describe the principles of Single Page applications - Key topics
- Structure and terminology of marked documents. XML: standards, analysis and processing of XML documents.
- Document Object Model, Event-Driven XML processing, navigating and querying XML data with XPath, XML Transformations.
- HTML documents, HTML 5 standard and modern web page markup.
- CSS: styling, layouts and responsive web design.
- Basics of modern JavaScript and TypeScript applications, Node.js ecosystem, dependency management via NPM.
- JSON: syntax, data types, fields, and data objects. Working with databases in TypeScript, principles and implementation of REST APIs in TypeScript.
- GraphQL: schema, queries, mutations, types, validation.
- React: JSX/TSX markup language, React component definition and composition, component lifecycle, app state, list processing.
- React: forms processing and validation, fetching data from REST APIs.
- React: routing, react-query and client-side mutations.
- React: State management, global state, reducers.
- YAML: syntax and use-case. Docker: containerization and application deployment.
- Approaches, practices, and methods used in teaching
- The course is split into lectures, seminars, and individual work on iterations and team projects. The lecture presents terms and principles from markup languages and modern web development. Seminars in computer schoolrooms demonstrate correct procedures and tools for developing modern applications and solving demo assignments similar to iterations. They also serve as a platform for students to consult iteration assignments and team project solutions.
- Method of verifying learning outcomes and course completion requirements
- Course evaluation is based on continuous evaluation of five iterations (max. 40 points in total, minimum of 20 points is required), continuous work and presentation/defence of a team project (max. 40 points for the project) and theoretical exam, organized as a ROPOT in the Information System (max. 20 points). Students must score at least 70 out of 100 points to pass the subject if they choose the "exam" course completion. To pass the subject with "credit" course completion, 60 out of 100 points are necessary. To meet the 60 out of 100 points goal, students with "credit" course completion can also attend the exam.
- Language of instruction
- Czech
- Follow-Up Courses
- Further comments (probably available only in Czech)
- Study Materials
The course is taught annually. - Listed among pre-requisites of other courses
- Teacher's information
- The subject requires substantial work beyond seminars while learning the used technologies, their specifications and other learning sources. Most of the course materials, as well as the Interactive syllabus, are written in English. Evaluation of iterations in the form of code reviews also increases this subject's time/effort load.
- Enrolment Statistics (recent)
- Permalink: https://is.muni.cz/course/fi/spring2026/PB138