Mohammad,
My answer is genuinely "My own templates". Bothe object templates (To create a new tiddler "object" and View Templates to display each object-type). I build a tiddler with all the content and values desired, although I do avoid using the text field, One of the key field values is an object-type which is then used to apply a view template for that object-type when viewed.
However it is often simpler for new tiddlers with no text content to specify all the new fields and their values in the new tiddler button I create for the purpose.
One of my favorite tricks is to create new tiddlers in context. For example if I have a tiddler with a domain=personal project=newdb stored in the domain and project fields, I create the new tiddler with a custom button on the current tiddler, where in its fields I include domain={{!!domain}} project={{!!project}} so the new tiddler inherits these fields and values or "the context".
Thus I open any project or project task and click new and I get a new item in that context, without having to set domain and project.
Or perhaps you are interested in using the existing core templates, that's another story.
Regards
Tony