En realidad no es una mala idea trabajar con 
localStorage, aunque yo hubiera usado sesiones en PHP. En cuanto al tema del tipo de datos que se pueden guardar, para 
saltarse la limitación de las cadenas, puedes usar objetos JSON, para lo cual puedes hacer uso de los métodos 
JSON.stringify y 
JSON.parse.    
Código Javascript
:
Ver original- var datos = { 
-     nombre: "Alexis", 
-     edad: 26 
- }; 
-   
- localStorage.foo = JSON.stringify(datos); //Así lo guardamos 
- console.log(JSON.parse(localStorage.foo)); //Y así lo recuperamos 
Saludos