Skip to content

Current Architecture

Jay Mathukiya edited this page Apr 14, 2025 · 1 revision

Current Technical Architecture

This document provides an overview of the technologies and services used in the SoloType project as of April 14, 2025.

Technology Stack

  • Frontend: Next.js (v15.1, App Router), React (v18.2), TypeScript, Tailwind CSS, Shadcn UI
  • Authentication: Firebase Authentication (Client-Side SDK: Email/Password, Google Sign-In)
  • Containerization: Docker (Used for Frontend Application)
  • Container Registry: GitHub Container Registry (GHCR)
  • CI/CD: GitHub Actions
  • Hosting: Azure Web App for Containers (Linux)
  • Planned Backend: Azure Functions (Node.js Runtime)
  • Planned Database: MongoDB Atlas (NoSQL)
  • Planned AI: Google Gemini API

Deployment Flow (CI/CD)

The application utilizes GitHub Actions for automated continuous integration and deployment:

  1. Trigger: Pushing or merging code to the main branch triggers the workflows.
  2. Build (docker-image.yml):
    • Checks out the source code.
    • Logs into GitHub Container Registry (GHCR).
    • Builds the production Docker image for the Next.js frontend using the project's Dockerfile.
    • Pushes the built image to GHCR, tagging it with latest and the commit SHA.
  3. Deploy (azure-container-webapp.yml):
    • Logs into Azure using credentials stored in GitHub Secrets.
    • Instructs the Azure Web App service to pull the newly pushed image (identified by its commit SHA tag) from GHCR and deploy it.
    • Azure Web App uses credentials stored in its Application Settings (a GitHub PAT) to authenticate with GHCR for pulling the image.

See the CI-CD Pipeline page for more details on the workflows.


Clone this wiki locally