Porphyrin nanotubes are made by ionic self-assembly of two oppositely charged synthetic porphyrin molecules. The diameter of the nanotubes can be altered by modifying the structure of one of the porphyrin tectons. The nanotubes are photocatalytically active, mechanically responsive to light, and are composed of J-aggregates that exhibit resonance light scattering.