Skip to content

SparkCheckDevHub/SparkCheck

Repository files navigation

SparkCheck

Swipe-Less Dating App Written in Blazor Server with EF Core


SparkCheck

sparkcheck.date Docker Pulls Latest Release AGLPv3 License


SparkCheck is a live matchmaking dating platform, built with Blazor Server and EF Core. Unlike traditional swipe apps, SparkCheck instantly pairs users for live chat sessions, making connections faster, more interactive, and meaningful.

Key Features:

  • Filtered matchmaking queue - Find the best match based on age, location, gender, and preferences
  • Live interactive sessions - Engage with AI-generated conversation prompts in real-time
  • Date Designer - Curated date ideas based on mutual interests and nearby locations
  • Ease of use and setup - Only requiring phone number login, interests selection, and profile completion to begin.

Tech Stack

  • Blazor Server (.NET 8)
  • Entity Framework Core for database management.
  • MudBlazor for UI components
  • Python microservices for matchmaking and phone verification
  • SQLAlchemy for python database connectivity
  • AsteriskPBX for initiating verification calls to the user
  • Dockerized for easy deployment
  • Nginx as a reverse proxy

Original Contributing Members (alphabetical order):

Ready to find a match?
Check out our live demo at SparkCheck.date. NOTE: We reset the data on the server weekly.

Want to run your own instance of SparkCheck?
Visit the server installation section to learn how deploy your own instance.

Want to contribute?
We welcome code contributions for our project :) Please familiarize yourself with our codebase, read and agree to the contributor code of conduct, and submit a pull request!


Server Installation

To install SparkCheck on your own server, you'll need a machine capable of running Docker and Docker-Compose and any additional requirements.

Dependencies

(Optional) To install all of the necessary Docker and related dependencies before deployment, run the following script provided in the repository

chmod +x ./scripts/install.sh
sudo bash ./scripts/install.sh

The necessary dependencies include:

  • Docker
  • Docker Compose
  • Git
  • Certbot
  • Nginx
  • Socat (optional, for testing)

Cloning the Repository

Next, make sure you clone the repository onto your machine and enter it as the working directory.

git clone https://github.com/SparkCheckDevHub/SparkCheck.git
cd SparkCheck

Environment Variables

SparkCheck uses a variety of environment variables to properly deploy an instance. The grid below shows each environment variable and its purpose.

Variable Purpose/Description
SA_PASSWORD This is the password used by Microsoft SQL Server. Please set a password following the strong passwords guideline.
SC_USE_ASTERISK True|False depending on if your server will be using phone verification
SC_SIP_HOST The hostname of the VOIP point of presence.
SC_SIP_PORT The port used by the VOIP point of presence
SC_SIP_NUMBER The DID used to make calls.
SC_SIP_USERNAME The username for VOIP authentication.
SC_SIP_PASSWORD The password for VOIP authentication.
SC_OPENAI_KEY An API key provided by OpenAI for generative features in match chats.

To deploy the most basic of configurations on a Linux machine, create a .env file in the repository root, and write our basic configuration to the file. NOTE: Please use a secure database password.

touch .env
nano .env
# Then write the basic configuration to the file, and run the following command:
source .env

Basic Configuration:

SA_PASSWORD=pl34s3-ch4ng3-th1s-s3cur31y
SC_USE_ASTERISK=False

On Windows, run the following commands in PowerShell and then start a new session for basic configuration:

setx SA_PASSWORD "pl34s3-ch4ng3-th1s-s3cur31y"
setx SC_USE_ASTERISK "False"

Startup

Once your environment variables are setup, finish by building the docker container and running it. Your instance will be accessible at 127.0.0.1:5980.

docker-compose build
docker-compose up -d

Alternatively, use our quick-start script

sudo bash ./start.sh

To update the containers from the repo, use the following script

sudo bash ./scripts/update.sh

Additional Setup

Optionally, you can configure your instance with Nginx and CertBot. Modify the files in /nginx to match your domain configuration. Then, run...

sudo bash ./nginx/setup-nginx.sh

This will guide you through Certbot setup when invoked.


Screenshots

© 2025 Team Cortanix 💛

About

Swipe-Less Dating App Written in Blazor Server with EF Core

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •