''Lanchas'' from Panajachel heading to San Pedro la Laguna will take you to the dock in San Juan if you ask. A ''tuk-tuk'' from San Pedro should cost no more than Q5, and just walking it is fairly quick (~2km). Alternatively, the pickups and buses servicing the towns around the lake can get you to San Juan as well.
The town is small enough to easily walk to any part of it within 5 minutes.
"La Nariz del Indio," a mountain named after its resemblance to a Mayan's profile with a prominent nose, lies just NNW of town. It is now a national park with well maintained trails, informational displays, roofed ''miradores'' (lookouts) and a Q30 entrance fee. The entrance lies along the main road heading out of town towards San Pablo (clockwise around the lake). The entire hike in and out can be done in 3-4 hours easily. Alternatively, one can take a different route out the back towards Santa Clara la Laguna, then catch pickup trucks or tuk-tuks back towards San Pablo and then San Juan (Q5 each leg for Q10 total).
A few stores sell textiles woven by local women's cooperatives, some using natural dyes such as carrot, achote (a red seed used for cooking), etc. The profits support the local women and their families.
There are also several art galleries.
A few ''comedores'' with cheap food are scattered around the center of town. There is a restaurant with nice lake views down towards the dock (take the first right as you walk up from the dock and it will be on your right). Hotel Maya has a fancier (and slightly more expensive) menu in its "eco"-themed restaurant.
'''Hospedaje Estrella Del Lago''' is fairly inexpensive with a nice location overlooking the lake. It is right off of the road leading to the dock.
'''Ecohotel Uxlabil''' is much more expensive, around US$50 for a double, but it has large, well-maintained grounds with a volleyball court, hot tub, sauna, its own dock, etc. The staff is very friendly and helpful. (http://www.uxlabil.com/atitlan-ing.htm)
''Lanchas'' arrive infrequently at the town's dock, so it is advisable to take a ''tuk-tuk'' to the Panajachel dock in San Pedro to catch a more frequent departure there back to Panajachel.