This project is a full-stack application that I developed using .NET Core for the backend and React for the frontend, deployed on Microsoft Azure, with both the application and the database hosted on Azure services. The platform enables users to create, join, and manage activities while also following other users to stay updated with their activities. Instead of direct messaging, users can communicate within event detail pages, where they can post comments and chat about the specific event. This approach enhances the collaborative nature of event planning and participation.
Before you begin, make sure you have the following installed on your system:
- Docker: For containerizing and running the database.
- .NET SDK 8: To run the application.
Clone this repository to your local machine and navigate into the project directory.
git clone <repository-url>
cd ActivityHub
Before running the application, set up the required environment variables. You can use the appsettings.sample.json
file as a reference.
-
Copy
appsettings.sample.json
toappsettings.json
:cp appsettings.sample.json appsettings.json
The database is configured to run using Docker and is defined in the docker-compose.yml
file.
-
Run the following command to start the Azure SQL Edge container:
docker-compose up -d
This will:
- Pull the
mcr.microsoft.com/azure-sql-edge
image (if not already available). - Start the database service on port
1433
.
- Pull the
-
Verify the container is running:
docker ps
You should see a container named
sql
running.
Navigate to the API
directory and start the application using the .NET CLI:
cd API
dotnet watch run
This command will:
- Start the API on
http://localhost:5000
. - Automatically reload the application upon detecting code changes.
Once the API is running, open your web browser and go to:
http://localhost:5000
If everything is set up correctly, you should see the application running.
To stop the application and the database container:
-
Stop the database container:
docker-compose down
-
Stop the API process by pressing
Ctrl + C
in the terminal runningdotnet watch run
.