- David Grudl
- Nette Core | 8040
My TODO list for further development.
It will be great if you would like work on any topic. I'm not asking you to create pull requests, a lot of ideas should be discussed at first.
independence, which involves integration of Nette\Templating and finding templates from UI\Presenter into Lattedone remove PhpFileStorage – it creates dependency in Latte and DI to Nette\Caching, although the templates and the DI container should be cached only to PHP filedone template Factory, that will be used bydone
- Dot syntax – draft rules for
$dot.syntax, eliminating the need to use getters from Nette\Object
- Pseudofunction – mapping global calls like
func(...)to own functions
- Sandbox mode – be able to spy and possibly restrict which methods are called in template
- Parsing of macros – tokenize macro already in Parser,
Local modifiers which can be used in expressions
- Source map generator
Modifiers vs escaping – eg nl2br modifier should says that it wants already escaped input
Moving to Tracy – rewrite Nette to use Tracydone Ajax loading for DebugBar
Remove $context from Controldone
- CSRF links protection
- Do not send headers directly into the Response
- Nette\Routing – general routing, where “presenter” is just a parameter
- store & restoreRequest move into new service (in progress)
- secure modules – you can configure, that a module requires an authorization
- remove BasePresenter, replace with composition
- persistent parameters without inheritance
- netteForms.js object – rewrite static stuff to object
- netteForms.js live validation – you can easily use live validation
netteForms.js events – attach a click and change events (for toggle) and submit to body
- add Forms\IValidator – adds support for complex validators, with own JS export
- configurable Form::URL and Form::EMAIL – which type of URL accept? Check domain in email?
do not validate blank elements when they are not required
separated parts – Tracy, Latte, Databasedone
- logging withnout session via hash stored in the cookie and reading the identity from DB
- local autowiring – example: each Nette\Database\Context (per connection) will autowire its Nette\Database\Connection
- Bool parameters – suggest how to get rid of the bool parameter from methods
- Authorizer without roles
Neon enhanced syntaxdone
- Neon source map generator
Examples & Tools
- Login via Facebook/Twitter – add example
- Linked select boxes – add example
- Dynamic forms, like adding addresses
- Presenter generator from command line
- add tool for mocking
- Member | 728
Recently I've been integrating latte into symfony (still work in progress). Maybe some ideas can be helpful for separating latte from nette.
- I've found out that
Nette\Latte\Engineserves two purposes at the same time so I separated it into
- finding templates from UI\Presenter into Latte – I have it in my TODO so maybe I could solve it framework-agnostic way.
- template factory – I use event listeners for this.
- Member | 2118
- Dot syntax: What about symfony/property-access?
- template Factory: Meaning as service or sth else?
- service for store & restoreRequest: Already got one, I'll try to send a PR.
- secure modules: Isn't it better to do this on Presenter-level via annotations?
- Authorizator without roles: We might want to revive my RFC from last year.
- add tool for mocking: Just use Mockery, please. :-)
Last edited by enumag (2014-02-03 23:00)
- Member | 620
As for the separation of different Nette parts i would really love to see the two things as separate package:
Config and DI – i find myself writing a lot of console apps or small REST
app where i use only configuration and DI from Nette
Router – Nette router is simply the best and deserves to be standalone