I have 1 project under me and looks like we are ahead of time in this. We told client that the project will be completed in a month, and the developer completed it in 2 weeks. What should you do in this situation?
Start with a high-5 all around! :)
Meet with your customer. Let them know you think you've completed the feature and give them a demo. Ask them if it meets their acceptance criteria. My bet is the customer will have some tweaks or changes now that they have seen it. By circling back to them right away, you've got a chance these changes can be made without impacting the customer's final delivery date.
Frequent communication with the customer will ensure you are going in the right direction and allow for changes as reality intercedes.
And if you really are done, then celebrate. Success is something to be recognized.
I'd echo Joel's answer about checking with customer and also simpixleated's about polishing.
A few other thoughts though, on the lines of "are you sure you're finished":
You have a month project, developed in 2 weeks. Is there any plan for testing the software that has been developed? Either from a functionality point of view or other less visible aspects e.g. performance under load, security, usability, accessibility etc.
Is the deployment method understood and tested? If it is software to run on the client's PC has it been installed and tested on PCs other than the developers to prove there are no unknown dependencies?
Is user acceptance testing or usability testing planned - this can flush out unexpected needs or problems.
I find depending on the client items such as above can be greater effort than the actual development
No offense, but it looks like something too good to be true! Did you clearly understand what your clients asked? Did you miss a part of it? Sorry to be a skeptic, but usually you have much more work than you can handle. Unless you planned wrongly at the beginning. I would call your clients as soon as possible to validate with them if what you did corresponds to what they asked. If it is yes, congratulations! But do not expect to leave something like that every time.
Polish, refine, and deliver something beyond your own expectations and standards of quality. You could easily spend another week or two testing and improving (without adding unrequested features) every little detail and still deliver it ahead of time. For example, testing on additional platforms/browsers, fixing bugs that may have been acceptable before, running through additional validation tools, etc.
Congratulations! And pass it along to the team. Specifically, take the team out for a celebration; food and/or activity. if possible, consider giving them a bonus.
Do not pretend the project is not over - that's a sure-fire way to demoralize the team.
Unless there's a good reason not to, inform the customer that you are ready to deliver - and make a big deal about the early delivery. After all, you want the team to repeat this feat.
Do not start adding features, no matter how trivial. If it's tested and approved then ship it. Adding even the smallest feature could cause major delays; if it aint broke, don't fix it.
Do not squeeze the next schedule on the assumption that you have a Super Team. That's equivalent to punishing them for doing a great job.