Ingredients:

1/2 gallon (8cups) milk
1/4 cup lemon juice
1/2 cup sugar
1/4 teaspoon ground cardamom
For Garnish:

2 tablespoon sliced pistachios
About 8 strands of saffron
2 tablespoon crushed pineapple
Method:

Make the paneer (check the recipe for paneer).
Drain the whey using a strainer line with cheesecloth, or muslin cloth.
Wrap the curds in a muslin cloth, rinse under cold water, and squeeze well.
Once the paneer is drained, place on a dry, clean surface and knead the paneer until the paneer is almost rolls into smooth soft dough.
Add the sugar and cardamom into the paneer and knead the paneer again until sugar is mixed well.
Next on low heat cook the paneer mixture stirring continuously until paneer starts coming together as soft dough. This should take about 6 to 7 minutes.
Turn off the heat and keep mixing the paneer like you are making dough.
This is most important step to this dish; you are just cooking paneer enough to take out the rawness. If you over cook the paneer it will become crumbly.
Mix the saffron thread in 1 teaspoon of warm milk and mix it well. Keep aside.
Divide the paneer in 24 equal parts and roll them giving a ball shape.
Garnish with crushed pineapple, or garnish them with a drop of saffron paste putting sliced pistachio over.
Refrigerate them for few hours before serving. Serve them chilled!
Sandesh can be refrigerated for a week.