SwayTD is a tower defense game with a buit in map editor that gives users their own freedom in creating maps, view other users maps and choose to play on them.
SwayTD is built mostly on React and greatly depends on reacts amazing features, libraries such as react redux and react hooks, maximizes reacts rendering to give a seamless user experience within a single page, without React loading these havy maps on the web would be quite a difficult challenge to implement.
Created using one external library TippyJS for those simple popup tooltips, and the rest are plain HTML and CSS to showcase my mastery in those languages, and for a lightweight simplistic frontend design.
Backend made with SqlAlchemy, Python, Flask because of python’s multithreading capabilites, flexible and powerful packages, high level language which is easy to read and implement, ORM cause of making complex queries into short simple, easy to follow queries. Which I then implemented indexing for maps on Users profile’s, infinite scroll on other user created maps, a robust search system and quick map load/view times.
A fully built in map editor made with Javascripts canvas element in combination of OOP(object oriented programming), features include, undo, draw grid, erase tile, clear map, clear grid, color picker, copy color, draw pathing, select pathing speed, undo pathing, edit, save, delete map and reload map saved state.