Peel and deseed the squash and cut into approximately ½ inch (1.5cm) dice. Dice the onion and pepper, if using, and finely dice the garlic.
Warm the oil in a heavy pot or Dutch oven over a medium heat then add the onion. Cook for a few minutes until it is softening and starting to go translucent. If it starts to brown, reduce the heat and/or add a little extra oil, as needed
Add the garlic, cook a minute more then push onions to one side and add the ground meat. Break up the meat as you brown it all over so it is cooked through and no raw color remains. Mix the onions in as you turn the meat to brown it.
Depending on how lean the meat is, drain off excess fat (a little is fine but drain if there seems a lot). Add the chili, cumin, paprika, oregano, tomato paste and salt and pepper and mix through.
Add the bell pepper, if using, squash, tomatoes, stock and beans. Stir to mix then bring to a simmer. Once simmering, press the squash under the liquid to help it cook, cover and reduce the heat to keep at a steady simmer. Cook for approximately 15 - 20 minutes until the squash is tender.
Serve as it is, or over rice, with your favorite toppings such as grated cheddar cheese, sour cream, slices of red onion.