How to Run

📦 Requirements

  • .NET SDK: .NET 9.0 SDK installed

  • Node.js & npm: Node.js ≥16 with npm

  • Database: Microsoft SQL Server (local or cloud)

  • Docker (optional): Docker Engine & Docker Compose installed

🔐 API Keys

💻 OneCompiler (for code execution)

OneCompiler is used to run code against test cases in problem-solving questions.

To obtain a free API key:

  1. Sign up for a free account at RapidAPI

  2. Copy your API key from the X-RapidAPI-Key section

🤖 Gemini (for AI interaction)

Gemini is used to power AI-based features in the platform.

To obtain a free API key:

  1. Generate and copy your Gemini API key

📧 Gmail SMTP

To use Gmail's SMTP server, you need to create an App Password because Gmail requires 2-Step Verification for enhanced security.

To generate an App Password:

  1. Enable 2-step verification on your Google account

  2. Generate the 16-character app password from app password

⚠️ Important: Use this App Password instead of your regular Gmail password when configuring SMTP settings.

🛠️ Steps to Run

🚀 Run Locally

  1. Clone the repository

git clone https://github.com/Learnathon-By-Geeky-Solutions/elite-programmers.git
cd elite-programmers

🔥Clone the latest version

git clone https://github.com/Raofin/TrueTest.git
cd TrueTest
  1. Configure

    1. Backend

      Use the following Commands to store the credentials in user secrets 👇

      cd src/api/ops.api
      dotnet user-secrets set "EmailSettings:Email" ""
      dotnet user-secrets set "EmailSettings:Password" ""
      dotnet user-secrets set "OneCompilerSettings:ApiKey" ""
      dotnet user-secrets set "GoogleCloudSettings:FolderId" ""
      dotnet user-secrets set "GeminiSettings:ApiKey" ""
    2. Frontend

      cp .env.example .env.local
  2. Build & Run

    1. Backend

      dotnet restore
      dotnet run

      ✅ The project is configured to automatically apply migrations with some seed data on its first run in the default connection string. So you do not need to manually apply them.

    2. Frontend

      cd src/client
      npm run build
      npm start

🐳 Run with Docker

  1. Open the docker-compose.yml and under environment section, fill in the required values.

  2. Build & start containers

    docker-compose up --build
  3. Access:

    1. Frontend: https://localhost:9999

    2. Backend: https://localhost:9998

    3. Database: http://localhost:6666

Last updated