Maze generator and solver is based on graph theory and different kinds of searching and path finding algorithms. It aims to generate different kinds of maze (i.e. maze with dead ends, mazes without dead ends and mazes with few dead ends) by the implementation of depth first search with recursive backtracking algorithm for maze with dead ends and with additional array implementation for mazes without dead ends and few dead ends. The generated maze can be solved by user or can be automatically solved by the use of different informed (i.e. Greedy and A*) and uninformed (i.e. Depth first, Breadth first) search. The generation and solving of the maze can be visualized and the size of the maze to be generated can also be provided by the user. The implementation has been tested and confirmed to work for the mentioned search algorithm for maze generation and for solving it. The maze generator and solver only generates and solves square maze. Since, maze generator and solver can be used to visualize the maze generation and solving of maze, the time take for generating and solving maze drastically increases as the size of maze increases.