Quick search:

Where to start

If you think phpPeanuts is something for you, you know that you need to prepare and investigate.

First you need to get a general idea about what phpPeanuts is about. It may be a good idea to start with some browsing through the examples website and reading throuh the tutorial. Don't try to really understand it all, just see it as a first scouting mission in unknown territory, meant to give you a general sense of what is there and where it is. You may follow some hyperlinks to verify your ideas about what things mean, then press back to continue your breadth first browse of the terrain. 

Next you can do the same with the classes if the framework. Start with the classes section, read through the short descriptions of each package, Then drill into each package and read the description of each class. You may drill down futher throuh hyperlinks to definitions of terms, then back out using the back button of your browser. Don't follow hyperlinks to 'how to' descriptions, this is only a superficial scan of the concepts and terms the framework is built on.

Another way to get an overview of the classes in the framework is the design section. However, this section is seriously outdated, you should compare them with the class hierachy shown by the hypercode package browser if you click on the same package.

Next, try to understand the principle of the user interface composition. Follow each of the hyperlinks if you did not do so before, read them, then go back to continue with the priciple page. Then try the description of request dispatch. Click through to the explanation of of the parameters in how to asssemble a hyperlink or form. Read it, then go back to the description of request dispatch. To get a better understanding you may go back to the examples and tutorial to find examples of each of the pages and look to their hyperlinks. You may also take a closer look into example 6, which shows information about the actual dispatch in the information part of most pages, look at their hyperlinks and look into the source to see the comments about the inclusion of parts and skins.

If you are still here after all this, it is time to download the framework and the examples. Go back to the tutorial, and install them on your own development server. Test it and make sure you get the error handler in development mode. The error page you get if  it is not in development mode is only there for end users and should not reaveal any of the technical details that you need as a developer.

Then look into all the details of the tutorial and te pages it links to, look to the examples code and how each example differs from the previous. This time try to really understand what is going on, for example 1-3 only about the domain model, for examples 5 and up also with respect to the specialization of the user interface.. Experiment by changing the code and see what happens. Look into the the frameworks api docs and source if you need to.

After all this it is time to start your own pet project. Choose something simple that is essentially an application for entering data into a database and retrieving it. For example a movies or books database or the product data mangement secion of a web shop. A content managed website or a bookkeeping application are not good ideas. A shopping cart might be a nice extension.

All this learning and experimentation is to protect yourself from the 'go get it' mentality that usually occurs if you start with a real life application. If you are not familiar with the framework, a real life application will only lead to frustration. Once you are ready, and if your project has a reasonable fit to what phpPeanuts can do, development will probably go surprisingly quick. But every now and then you will keep running into problems that require you to go back investigating and learning. Try to understand why that is, in other words, what kind of things phpPeanuts is not good at, or you may not yet have the required knowledge about or experience with. And reserve extra time in your project if you sense that you may get out of your comfort zone into learning and investigation or into the develop-it-yourself area where phpPeanuts is of little help because of it's focus or the specific nature of your project.