Skip to content

Game-Connect-App/GameConnect-Core

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GameConnect Core

Quality Gate Status

This project is the core of the GameConnect platform, a social network for gamers. It provides a platform for gamers to connect, share, and play games together. The platform is designed to be user-friendly, secure, and scalable, making it suitable for both casual and competitive gamers. This project is a mono-repo that contains the core backend and frontend components of the GameConnect platform, using the T3-Stack.

This project is built on the T3 Stack and is bootstrapped with create-t3-app. It integrates multiple cutting-edge technologies including Drizzle ORM for database interactions, Next.js for server-side rendering, NextAuth for authentication, and much more. This setup is designed to be scalable and efficient, making it suitable for both development and production environments.

Technologies Used

  • Next.js - The React framework for production.
  • NextAuth.js - For secure authentication.
  • Drizzle ORM - An ORM for managing database entities.
  • Tailwind CSS - For utility-first CSS.
  • tRPC - End-to-end typesafe APIs made easy.
  • Ansible - For automating deployment and configuration.
  • SonarQube - For continuous inspection of code quality.
  • PostgreSQL - As the underlying database system.

Local Development Setup

  1. Clone the repository:

    git clone https://github.com/Youngermaster/T3-Stack-Shadcn-UI.git
    cd T3-Stack-Shadcn-UI
  2. Install dependencies:

    pnpm install
  3. Setup the environment: Copy the .env.example file to .env and update the environment variables to match your setup:

    cp .env.example .env
  4. Start the local development database:

    ./start-database.sh
  5. Run the development server:

    pnpm dev

    Visit http://localhost:3000 to view the application.

Database Management

  • Migrate and push changes to the database:

    pnpm db:push
  • Open Drizzle Studio to manage the database interactively:

    pnpm db:studio

Code Quality with SonarQube

Run SonarQube analysis to ensure high code quality:

./sonar_scanner.sh

Ensure SonarQube is running locally or adjust SONARQUBE_URL in your .env to point to your SonarQube server.

Deployment

The application can be deployed using Docker. See the docker-compose.yml file for Docker configuration details. Use the following command to build and run the Docker environment:

docker-compose up --build

Contributing

Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Need Help?

If you have any questions or need help, please open an issue.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published