wordpress publish a post from frontend without plugin

How to publish a post from frontend without plugin in wordpress? This is not a complex task and users can publish their own post without using a plugin.Post fields validations, error displaying and bootstrap html contents added and you have only add bootstrap css files.

Step-1 : Creating Template page

I’m going to create a template page and it assign into a page to display the form.My theme is twentytwelve.
1-Create a page.Named it as you wish. I’ll name it front-end-post.php.
2-Add the following code into it and save.

Step-2 : Assign the Template page into frontend page

Go to the admin panel and create a page to display the form.Then select the “Template” from right side drop down box.
Select template page

Step-3 : Creating the form

Step-4 : Submit form process

Step-5 : Display the error message

Put this all together

How to add Featured Image