Mince garlic and chop onions. Add olive oil and ghee to a large saucepan on medium-high heat. Add chopped garlic and onions and sauté for 3-5 minutes. Chop the celery and add it to the top. Turn the heat down to medium, cover, and cook for 5 minutes.
Add to the soup
Chop zucchini into 1-inch pieces. Use a vegetable peeler to peel potatoes. Chop into 1-inch pieces. Add zucchini and potatoes to the soup pot,along with the water, dried thyme, bay leaf, black pepper, and half the salt.
Bring to a boil, then reduce the heat to a simmer for 20 minutes, partially covered. If the vegetables are soft and break apart easily, they are done. Turn off the heat and use an immersion blender (hand blender) to puree the soup until smooth.
Add the optional napa cabbage
If you choose to add the optional napa cabbage, turn the heat back on the soup and bring it to a simmer. Quickly chop cabbage and wash in cold water. Add cabbage to the soup, and simmer for 5 minutes. Taste the soup for salt, and adjust to taste. Add fresh lemon to taste.
Make the broccoli rabe topping
To make the broccoli rabe topping, remove the thicker stems, and chop into bite-sized pieces. Wash in a bowl of cold water. Heat a small skillet on medium heat. Add olive oil and the broccoli rabe. Simmer for 5 minutes, until just tender.
To serve
Serve soup in individual bowls. Top with broccoli rabe and freshly ground black pepper.
Notes
Adding the napa cabbage is optional. Substitute napa cabbage with a different quick-cooking green, such as spinach, finely chopped kale or collars, turnip greens, radish greens, etc.For the broccoli rabe topping, you may also substitute with regular broccoli, or another sautéed green.