Nette Framework (NETF)

Programming, Web Programming

This course targets web coders with basic to intermediate experience and introduces the Nette Framework as a practical tool to build sites with dynamic content, custom web applications, and clean, maintainable administration interfaces. It emphasizes clear design and delivery.

During the training you will learn MVC app flow, package management with Composer, and how to use Debugger Tracy to speed troubleshooting. You will also get practical basics of MySQL and core web application security practices.

THIS TRAINING COURSE WILL HELP YOU:

  • Build dynamic web apps with Nette and clean MVC structure
  • Manage packages and dependencies with Composer
  • Create reusable forms, AJAX features, and admin interfaces
  • Configure routing, sessions, and database access with MySQL
  • Apply basic authentication, authorization and web security

WHO SHOULD ATTEND?

  • Front-end coders moving into server-side PHP
  • PHP developers learning a modern web framework
  • Programmers building admin panels and custom apps
  • Team members needing MVC design and debugging skills

COURSE LOCATION AND AVAILABLE DATES



Public courses are usually delivered in Czech, but this course is also available in English. We can arrange private training for your team online, at your premises or in our classrooms, and tailor the content to your needs.

For groups of around 4 or more participants, private training can already be comparable in price to booking individual places on a public course. Send us your requirements and we’ll recommend the best format and provide an exact quote.

Request training in English

Course content:

Hide details
  • Introduction
    1. Philosophy of the Nette Framework
    2. Installing packages with Composer
  • Basic application configuration
    1. Role of bootstrap.php and application flow
    2. Neon configuration format
    3. Tracy debugger and editor integration
    4. MVC (Model-View-Controller) command flow in the app
  • Components
    1. Component configuration
    2. Signals (subrequests)
    3. Passing values between components
    4. AJAX integration
  • Databases
    1. Database types and drivers supported by Nette
    2. Configuring multiple databases
  • Routing
    1. URL rewriting in Apache - mod_rewrite
    2. Nette SimpleRouter
    3. Creating advanced routes with Route and RouteList
    4. Routes with optional parameters in the URL
    5. Transformations, translations, and custom routers
    6. Routing debugger
  • Forms
    1. Basic form usage
    2. Nette form elements
    3. Validation conditions and rules
    4. User-facing error messages
    5. Retrieving values on the server
    6. Encapsulating forms into reusable components
    7. AJAX, custom appearance, and translations
  • Session
    1. Purpose and usage of sessions
    2. Sections with different expirations and data
    3. Securing the application session
  • Authentication and authorization
    1. Using the User class
    2. User roles
    3. Permissions for specific operations and resources
  • Emails
    1. Sending email via PHP or SMTP
    2. Creating an email and required elements
    3. Rendering emails with templates
    4. Attachments and additional items
    5. Sending, batch sending, and limits
  • Images
    1. PHP image libraries and their limits
    2. Nette\Image class
    3. Resize, crop, sharpen, add background, etc.
    4. Saving and handling transparency
  • More complex applications
    1. Neon and bootstrap.php configuration
    2. Language translators
    3. RobotLoader for Nette and third-party libraries
    4. Handling many files and directories with Finder
    5. Atomic operations
    6. Caching strategies
  • Conclusion
    1. Tips for third-party libraries
    2. Recommended Nette add-ons
    3. Nette Planette: Czech tutorials, videos, and forum
Prerequisites:
Use Windows or macOS, think abstractly, and have beginner-to-intermediate PHP, JavaScript, HTML/CSS skills; Symfony or Zend is a plus.
Schedule:
2 days (9:00-17:00)

Training and learning environment