This is a web-based open chess application built with Vue.js for the frontend, MongoDB for the database, Java for the chess logic, and SpringBoot for the backend requisitions and routing.
- Vite: Fast build tool and development server that is used in this project along with Vue.js for building the frontend. !Vite Documentation🚀
- Vue.js: A progressive JavaScript framework for building user interfaces. !Vue.js Documentation😎
- Vuex: A state management library for Vue.js that is used for managing the application's state. !Vuex Documentation📊
- VueRouter: A routing library for Vue.js that is used for navigating between different views in the application. !VueRouter Documentation🚦
- SpringBoot: A Java-based framework that is used for building the backend of the application. It provides a simple and efficient way to build APIs and handle HTTP requests. !SpringBoot Documentation 🚀
- MongoDB: A NoSQL database that is used for storing data related to the chess application. !MongoDB Documentation 📊
- DeepBlue UML: An inspiration for the chess business logic that is implemented in this project. !DeepBlue UML Reference 📈
###Frontend Development:
- The frontend of the application is developed using Vue.js, Vuex, and VueRouter.
- Three main views are implemented: Home View, Login Screen, and Play Screen.
- The Home View includes six routes: "Play", "Learn", "Rank", "News", "Login In", and "Sign Up".
- The Login Screen includes Google Identity OAuth2 Google Button for tokenized login and registration.
- The Play Screen includes Board Square and Pieces views in SVG, with reactive grabbing and movement (yet to be implemented). 🖼️
- The chess business logic is implemented in Java, taking inspiration from DeepBlue UML. DeepBlue UML Reference 📈
- All the necessary models, such as Piece, Player, Board, and Square, are implemented with some methods yet to be implemented.
- Console display and movement logic and validation are implemented (validation still in progress). 💻
- The backend of the application is implemented using SpringBoot and MongoDB.
- APIs and routes are implemented for handling HTTP requests from the frontend and interacting with the database.
👏 We welcome contributions to this project! If you would like to contribute, please follow these steps:
- Fork the repository and clone it to your local machine.
- Create a new branch for your changes.
- Make your changes and test them thoroughly.
- Commit your changes with descriptive commit messages.
- Push your changes to your forked repository.
- Create a pull request to the main repository, explaining your changes and how they improve the project.
- Let's work together to make this chess application even better! 🚀