dhruvkjain / Inkling

Inkling, one player draws a word or phrase while others race against the clock to guess what it is.
https://inkling-sigma.vercel.app
0 stars 1 forks source link
docker expressjs husky javascript knip mongodb mongoose nodejs reactjs redis-cloud schadcn socket-io tailwindcss typescript zod

App is currently in construction.

Inkling

Inkling, one player draws a word or phrase while others race against the clock to guess what it is.


Contents

Tech Stack


Architecture

β”œβ”€β”€ πŸ“.husky                   # Git hooks for pre-commit checks  
β”œβ”€β”€ πŸ“backend                  # Backend logic with API, models, services, and configurations  
β”‚   β”œβ”€β”€ πŸ“src                  # Source code for the backend  
β”‚   |   β”œβ”€β”€ πŸ“config               # Configuration for MongoDB, Redis, and Socket.IO  
β”‚   |   β”œβ”€β”€ πŸ“models               # MongoDB models for User and Game  
β”‚   |   β”œβ”€β”€ πŸ“routes               # API routes (Auth) with controllers
β”‚   |   β”œβ”€β”€ πŸ“utils                # Utility functions like JWT and hashing 
β”‚   |   β”œβ”€β”€ πŸ“services             # Service logic (e.g., game services) 
β”‚   |   β”œβ”€β”€ server.js          # Server entry point  
β”‚   |   └── app.js             # Creating an express instance
β”‚   β”œβ”€β”€ Dockerfile             # Docker configuration
β”‚   β”œβ”€β”€ knip.config.js         # Knip configurations
β”‚   └── docker-compose.yml     # Multi-container Docker setup  
β”œβ”€β”€ πŸ“frontend                 # Frontend code using Vite + React + Typescript with Tailwind CSS  
β”‚   β”œβ”€β”€ πŸ“@                    # ShadcnUI components and utility libraries  
β”‚   β”œβ”€β”€ πŸ“public               # Public assets  
β”‚   β”œβ”€β”€ πŸ“src                  # Source code for frontend app  
β”‚   |   β”œβ”€β”€ πŸ“context              # React contexts (Auth, Canvas, Game)  
β”‚   |   β”œβ”€β”€ πŸ“hooks                # Custom hooks for API requests and sockets  
β”‚   |   β”œβ”€β”€ πŸ“pages                # Application pages like Account and Game  
β”‚   |   └── πŸ“utils                # Helper functions (e.g., date and drawing utilities)
β”‚   β”œβ”€β”€ tailwind.config.js     # Tailwind CSS configuration  
β”‚   β”œβ”€β”€ tsconfig.json          # TypeScript configuration  
β”‚   └── vite.config.ts         # Vite configuration  
└── .gitignore                 # Files to be ignored by Git  

Installation

  1. Clone the repo
    git clone
  2. Move to Inkling
    cd Inkling
  3. Install dependencies
    npm install

Frontend Deployment to Vercel

Backend Deployment to Render

Deploy with Vercel