Jiří Pudil
Hello, I am
Jiří Pudil
I turn into <code>

Brand new jiripudil.cz

Earlier this week, I launched a brand new version of this website. It is written in PHP using Nette and Doctrine, uses Bower and Gulp to build assets, and strives to follow current best practices. And, last but definitely not least, its source code is open.


I use it not only as my website and blog, but also as a development sandbox. I try to keep up with current trends in web app development, following state-of-the-art best practices and using bleeding edge PHP, Nette, Doctrine (incl. migrations), various Kdyby packages, NPM, Bower, Gulp, and other tools.

I decided to open-source the whole thing so that it can also be a learning material for newcomers to Nette. It is licensed under the New BSD license and you can get the source code at Github or directly by cloning the repository:

$ git clone https://github.com/jiripudil/jiripudil.cz

The initial setup requires you to create, run and install loads of things. You need to have Composer and Node.js installed, as well as the following NPM packages: gulp, bower, and coffee-script (if not, install them via sudo npm install -g <package>). You also need PHP >= 5.5.

Then create app/config/local.neon file storing credentials to your database as in the following example:

  user: jiripudil
  password: youwishyouknew
  dbname: jiripudil.cz

Last, run these commands to install PHP and front-end dependencies and run database migrations:

$ composer install
$ npm install
$ gulp bower
$ gulp build
$ php www/index.php migrations:migrate

Also be aware that the website is running on Nginx (see my previous post to get to know Nginx and the basics of its configuration). That's why there are no .htaccesses. You will have to add them (e.g. those from nette/sandbox) to make it run on Apache.

You can see the development process in the commit history, report bugs and issues in the issue tracker, open pull requests if you feel this website lacks something, you can even try and hack it. Enjoy!

This post took 2 cups of coffee to write.

If you liked it, feel free to buy me one!

Have you found a typo in the post?
Please submit a pull request with a fix :)
More from my blog

Services don't need names

I love Nette Framework's dependency injection solution. I really do. This post is here to share this passion, explaining why I think it is the best DI solution in today's PHP ecosystem.

Read more
Content licensed under