Reactivities is a full-stack web application for managing and attending activities. It allows users to organize and participate in various group events, fostering collaboration and interaction.
Based on this Udemy course, massively refactored afterwards.
- Activity Management: Create, view, and manage activities.
- User Authentication: Secure login and registration.
- Activity Attendance: Join or leave activities easily.
- User follow: Follow other users.
- Chat: Real-time chat in each activity.
- Backend: ASP.NET Core (Web API), EntityFramework, SignalR, MediatR, FluentValidation
- Frontend: Node, React (TypeScript), Vite
- Storage: Postgres, Cloudinary
- Development Tools:
- Backend: Visual Studio (Windows)
- Frontend: Visual Studio Code (Cross-platform)
- Visual Studio (for backend development)
- Visual Studio Code (for frontend development)
- Docker (optional but recommended for containerized development)
- Node (optional for frontend development without Docker)
- Operating System: There are a bunch of development scripts made for Windows only.
Dev/Postman: Contains Postman resources for testing the API. You can import these into Postman to streamline API interaction.Dev/Scripts:Dev/Scripts/Environment: Scripts for setting up and managing the development environment (e.g., Dockerized databases).Dev/Scripts/WebClient: Scripts for developing the frontend in Docker. These eliminate the need to install Node.js locally.
- Clone the repository:
git clone https://github.com/yourusername/reactivities.git
cd reactivities
- Backend:
- Open the
Reactivities.Api/Reactivities.Api.slnsolution in Visual Studio. - Restore dependencies and build the project:
- From Visual Studio, press
Ctrl + Shift + Bor use theBuildmenu.
- From Visual Studio, press
- Run the project (using
Ctrl + F5).
- Frontend:
-
Use the scripts in
Dev/Scripts/WebClientto setup and run the React application in Docker:Dev\Scripts\WebClient\setup.batDev\Scripts\WebClient\install_packages.batDev\Scripts\WebClient\run_dev.bat -
If you prefer local development without Docker using Node 23:
cd Reactivities.WebClientnpm installnpm run dev
- Access the Application:
- Backend: Accessible at
https://localhost:6001. - Frontend: Visit
http://localhost:3000in your browser.

