Since you didn‘t tell details about your project, nobody can help you with alternative solutions or thoughts. A need for many pins can exist if there are lots of controls like buttons, encoders, or potentiometers, or if there is a need for driving peripherals in parallel mode like ADCs, DACs, or displays, but there are most times smart solutions to get around that, i.e. by serializing several things with shift registers or multiplexers, or by using a Teensy LC as a sub processor and port extender. The world of embedded computing has its limits and constraints, but there is most times a creative way around. But without knowing more about the project specifications, no qualified advice can be given. Just increasing the hardware resources looks sometimes like the easiest way, but it not always the most efficient. Think of booting Windows and launching MS Word on a modern 8 core processor with 8GB RAM anda 1TB harddisk. It takes around ten times longer than booting MS-DOS 2.2 and launching Word Star from a 360kB floppy disk on a 8086 IBM PC with 640kB RAM from 1985...