As promised I’m starting with a real project to proof that PHP may be what you want to build a web application 😉

Objectives

I want to show you complete way to build the functional application. I’ll go from setting up the environment, through installing the framework and required libraries, to deploying to the server.

Environment

I’ll use Docker with Nginx, MySQL, and PHP7 – I want you to make a minimal effort to start the project. In addition, you won’t need to install something on your computer (well, except Docker itself) and your computer will be clean as always. You could also do the examples yourself and easy experiment with the code in the same environment. If something will break you could always let me know and we’ll fix it together 🙂

Technologies

The project will be written in Symfony3 framework. It’s the newest version of this framework and it’s definitely worth to learn it just a little bit. For communication with the database, I’ll use Doctrine 2 ORM. And for deployment, I’ll use Capifony.

All the code will be hosted on Github, so you can always check how the project looks like, fork it, make changes, etc.

The idea

This project will be simple application extending Evernote. Evernote is very powerful notepad, but I want to automate some actions. I’ll use Evernote PHP SDK for communication and write some functionalities available via the web and additionally some performed by commands running in Cron.

There will be 2 main features:
1. easy reminders management: adding new tasks, checking tasks as “done”, simple but very readable list of all reminders from all notepads (if you ever saw todoist – it’ll be something like that), perhaps with future and overdue tasks as well, and
2. adding tags to notes with reminders automatically, to simplify views in a native app.

I’ll write about Evernote and the ways I’m using it in the next couple of weeks. In a few words, it is my main notepad where I keep all my useful stuff, like “how to do this”, recipes, tickets, and of course “to do” lists and reminders. It’s hard to describe it shortly so expect a new series about it! 😉

Summary

So, it’s all for today. Stay tuned and expect the next post about the project. I think there will be 2 new posts weekly, I’m pretty motivated to do it because I need it. As soon as possible 😉

Don’t forget to check out other PHPhyts!