UX (User Experience) is about making your site usable and useful for your users. A particularly effective flavour of UX is HCD (Human-Centered Design); this puts the human side of things front and center. UI (User Interface) is the specific pieces of the app: the HTML, CSS, and JS.
These are huge topics of their own, but a good starter set of guidelines is Jakob Nielsen’s 10 general principles for interaction design.
- Visibility of system status
- Match between system and the real world
- User control and freedom
- Consistency and standards
- Error prevention
- Recognition rather than recall
- Flexibility and efficiency of use
- Aesthetic and minimalist design
- Help users recognize, diagnose, and recover from errors
- Help and documentation
Read more details at 10 Usability Heuristics for User Interface Design. The “See Also” section has a few more links with good stuff in.