Hello friends, Coming up with project ideas can be sometimes really hard task especially for beginner who still don't exactly know what they are capable of doing, so they pick up too easy projects, which don't give them opportunity to level up their skills or at another side projects that are too hard, which can lead to struggling hard and loss of motivation. I've decided to recommend a few projects which I believe are intermediate level when it comes to complexity, so you can do them on your own with just using logic and thing u learn at CodeGym. Some of them will be easier, other harder, so don't hesitate to use google if struggling — but if you do, be sure to retype all the code on your own and think about what it does and don't just copy & paste. No more talking, here they are:


  • Scientific calculator
  • Unit converter
  • Decimal to Roman number converter
  • Friday the 13th (How many times there was friday 13. between two given dates? Try to make also version without using Date or similar class)


  • Password generator (Let the user define length, also if password should contiant special characters, small or uppercase letters, numbers.. You can also save result to a file.)
  • Scientific calculator (Yes, text. Make it accept math. expressions as string "sqrt(3+21*7-(14/5))")
  • Caesar cipher


  • PDF / CSV generator
  • CLI utility to zip / unzip files (For added complexity work only with files with certain extensions, or with .part files. Try to handle most of errors (file is missing, corrupted archive..google)
  • Mass file copy / rename


  • ATM (Add / remove users, give them id, let them change PIN, add / withdraw / send funds, multiple accounts for same user, saving accounts...)
  • School inventory (How many of each objects in which rooms)
  • Family tree
  • Vending machine



  • Airline /Hotel reservation system
  • Library management
  • Movie store
  • E-Commerce site (That one involves more knowledge, recommended in the end of course)


  • Guess the number (Let the user select if he wants to guess number, or the program will)
  • Slot machine (Randomization, probablity, objects)
  • Tic Tac Toe
  • Black Jack (User against PC which acts as dealer)
  • CLI RPG - there is a lot of them, feel free to google some
  • Dice game
Please, let me know if you agree with the complexity of programs in the list, or what should I add or remove. Happy coding! Article inspired by: MichelMk People who helped with the list: Hanna Moruga