/Transcendent

web-based gaming platform, where players can engage in thrilling matches against random opponents, challenge AI competitors, or participate in exciting tournaments.

Primary LanguageTypeScript

Transcendent

Welcome to our web-based gaming platform, where players can engage in thrilling matches against random opponents, challenge AI competitors, or participate in exciting tournaments. Our platform meticulously tracks users' achievements and ranks, allowing players to showcase their progress and compare standings with friends. Enjoy seamless communication through our messaging and live chat features, and create chat groups to stay connected with your gaming community. Join us and immerse yourself in a dynamic and competitive gaming environment where every match brings new opportunities for victory and camaraderie. This repository contains the code and resources necessary to understand, install, and contribute to the project.

Table of Contents

Introduction

Transcendent is web-based gaming platform, where players can engage in thrilling matches against random opponents, challenge AI competitors, or participate in exciting tournaments. Our platform meticulously tracks users' achievements and ranks, allowing players to showcase their progress and compare standings with friends. Enjoy seamless communication through our messaging and live chat features, and create chat groups to stay connected with your gaming community. Join us and immerse yourself in a dynamic and competitive gaming environment where every match brings new opportunities for victory and camaraderie.

Technologies Used

  • Frontend:

    • Next.js
    • Redux
    • Tailwind CSS
    • Bootstrap
  • Backend:

    • Django
    • Django REST Framework
    • Django Channels
  • Database:

    • PostgreSQL
    • Redis

Project Structure

The project structure is as follows:

transcendent/
├── src
│   ├── backend
│   │   ├── api
│   │   │   ├── migrations
│   │   │   └── tests
│   │   ├── authentication
│   │   │   ├── migrations
│   │   │   └── tests
│   │   ├── build-tools
│   │   ├── chat
│   │   │   ├── consumers
│   │   │   └── migrations
│   │   ├── game
│   │   │   ├── consumers
│   │   │   ├── managers
│   │   │   ├── migrations
│   │   │   ├── seed
│   │   │   ├── tests
│   │   │   └── utils
│   │   ├── media
│   │   ├── transcendent
│   │   │   └── tests
│   │   └── user
│   │       ├── migrations
│   │       ├── seed
│   │       └── tests
│   ├── frontend
│   │   ├── build-tools
│   │   └── src
│   │       ├── api
│   │       ├── app
│   │       │   ├── auth
│   │       │   │   └── register
│   │       │   │       ├── context
│   │       │   │       └── forms
│   │       │   ├── (dashboard)
│   │       │   │   ├── game
│   │       │   │   │   └── ingame
│   │       │   │   ├── home
│   │       │   │   │   ├── all-players
│   │       │   │   │   └── friends
│   │       │   │   ├── messenger
│   │       │   │   │   └── group
│   │       │   │   │       ├── choice-members
│   │       │   │   │       └── context
│   │       │   │   ├── notifications
│   │       │   │   ├── profile
│   │       │   │   │   ├── components
│   │       │   │   │   └── [username]
│   │       │   │   ├── ranking
│   │       │   │   ├── settings
│   │       │   │   │   ├── block-list
│   │       │   │   │   ├── components
│   │       │   │   │   └── Forms
│   │       │   │   └── tournaments
│   │       │   │       ├── create_tournament
│   │       │   │       └── [id]
│   │       │   ├── (game)
│   │       │   │   └── match-making
│   │       │   ├── provider
│   │       │   └── ui
│   │       │      
│   │       ├── constant
│   │       │   └── dashboard
│   │       ├── hooks
│   │       ├── lib
│   │       ├── redux
│   │       │   └── slices
│   │       └── type
│   │           ├── auth
│   │           └── dashboard
│   ├── nginx
│   │   └── conf
│   ├── redis
│   └── docker-compose.yml
└── makefile

Installation

To run this project locally, follow these steps:

  1. Clone the repository:

    git clone https://github.com/ayoub-aitouna/Transcendent.git
    cd Transcendent
  2. Install Required Tools:

    sudo apt-get install -y docker docker-compose make
  3. Run the development server:

     make
  4. Set up the database: run this command in a separate terminal window

    make db
  5. Open your browser and navigate to:

    https://localhost
    
  6. To stop the server:

    make down

Contributing

If you would like to contribute to this project, please follow these steps:

  1. Fork the repository.
  2. Create a new branch: git checkout -b feature-branch
  3. Make your changes and commit them: git commit -m 'Add new feature'
  4. Push to the branch: git push origin feature-branch
  5. Submit a pull request.

License

This project is licensed under the MIT License. See the LICENSE file for more details.

Contributors

This project would not have been possible without the vision and dedication of its founders. Their relentless pursuit of excellence and innovative spirit have been the driving force behind this platform's success:

https://www.linkedin.com/in/oussama-sdx/
Ayoub Aitouna
Ayoub Aitouna

Lead Developer
Khadija Mahdi
Khadija Mahdi

Lead Developer
Oussama
Oussama SDx

Game Developer

Contact

Feel free to reach out to us with any questions or concerns:


Thank you for checking out Transcendent!