You can either customise Alfresco Explorer which is a JSP/JSF based user interface. Or you can customise Alfresco Share. I suggest you refer to the developer's wiki in the first instance or one of the books on Alfresco. There are also other user interfaces that you may like to start with.
Or you can roll your own user interface with a technology of your choice, it sounds like that's what you may be thinking of. In which case you will want to intergrate your user interface code with one of the remote APIs for Alfresco.