-
-
Notifications
You must be signed in to change notification settings - Fork 273
Expand file tree
/
Copy path@home.texy
More file actions
85 lines (62 loc) · 3.38 KB
/
Copy path@home.texy
File metadata and controls
85 lines (62 loc) · 3.38 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
Nette Application
*****************
.[perex]
Nette Application is the core of the Nette framework, providing powerful tools for creating modern web applications. It offers a range of exceptional features that significantly simplify development and improve code security and maintainability.
Installation
------------
Download and install the library using [Composer|best-practices:composer]:
```shell
composer require nette/application
```
Why choose Nette Application?
-----------------------------
Nette has always been a pioneer in web technologies.
**Bidirectional Router:** Nette features an advanced routing system unique in its bidirectionality - it not only translates URLs to application actions but can also generate URLs in reverse. This means:
- You can modify the URL structure of the entire application at any time without needing to modify templates
- URLs are automatically canonicalized, improving SEO
- Routing is defined in one place, not scattered in annotations
**Components and Signals:** The built-in component system inspired by Delphi and React.js is unique among PHP frameworks:
- Enables creating reusable UI elements
- Supports hierarchical component composition
- Offers elegant AJAX request handling using signals
- Rich library of ready-made components on [Componette](https://componette.org)
**AJAX and Snippets:** Nette introduced a revolutionary way of working with AJAX in 2009, long before similar solutions like Hotwire for Ruby on Rails or Symfony UX Turbo:
- Snippets allow updating only parts of the page without needing to write JavaScript
- Automatic integration with the component system
- Smart invalidation of page sections
- Minimal data transfer
**Intuitive [Latte|latte:] Templates:** The most secure templating system for PHP with advanced features:
- Automatic XSS protection with context-sensitive escaping
- Extensible with custom filters, functions, and tags
- Template inheritance and snippets for AJAX
- Excellent PHP 8.x support with type system
**Dependency Injection:** Nette fully utilizes Dependency Injection:
- Automatic dependency passing (autowiring)
- Configuration using clear NEON format
- Support for component factories
Main Benefits
-------------
- **Security**: Automatic protection against [vulnerabilities|nette:vulnerability-protection] like XSS, CSRF, etc.
- **Productivity**: Less writing, more features thanks to smart design
- **Debugging**: [Tracy debugger|tracy:] with routing panel
- **Performance**: Smart cache, lazy loading of components
- **Flexibility**: Easy URL modification even after application completion
- **Components**: Unique system of reusable UI elements
- **Modern**: Full support for PHP 8.3+ and type system
Getting Started
---------------
1. [How Do Applications Work? |how-it-works] - Understanding the basic architecture
2. [Presenters |presenters] - Working with presenters and actions
3. [Templates |templates] - Creating templates in Latte
4. [Routing |routing] - Configuring URL addresses
5. [Interactive Components |components] - Using the component system
PHP Compatibility
-----------------
| version | compatible with PHP
|-----------------------|-------------------
| Nette Application 3.3 | PHP 8.3 – 8.5
| Nette Application 3.2 | PHP 8.1 – 8.5
| Nette Application 3.1 | PHP 7.2 – 8.3
| Nette Application 3.0 | PHP 7.1 – 8.0
| Nette Application 2.4 | PHP 5.6 – 8.0
Valid for the latest patch versions.