Secure. Fast. Reliable.
A web application for keep file storage and management, built with ASP.NET Core MVC.
- 👤 User registration and login system
- 🔄 Password change
- 👥 Two roles:
- Admin 🛠️
- Access to detailed user activity logs
- Option to generate Excel reports (
.xlsx) with logs
- User 📁
- Upload, browse, download, and delete own files
- View upload progress in real-time via SignalR
- Admin 🛠️
- Upload files up to 100 MB
- Background file queue handling via BackgroundService
- Instant feedback with toast notifications (NToastNotify)
- Fully responsive interface built with Bootstrap 5
| Category | Technology |
|---|---|
| Backend | .NET 9.0 (ASP.NET Core MVC) |
| Frontend | Bootstrap 5, jQuery, SignalR |
| Notifications | NToastNotify |
| Background Tasks | Hosted BackgroundService |
| Database | SQL (local or Docker) |
| Reports | Excel export (Admin only) |
- Clone the repository
git clone https://github.com/your-login/RemoteBackupsApp.git cd RemoteBackupsApp - Start the database (optional, via Docker)
docker-compose up -d
- Initialize the database
Run the database_initializer.sql script to create all required tables
- Build and run the application
dotnet build dotnet run --project RemoteBackupsApp.MVC
| Role | Permissions | Description |
|---|---|---|
| 🛠️ Admin | 🔍 View all user activity logs 📊 Export logs to Excel |
Designed for system maintenance, monitoring, and auditing. |
| 📁 User | 📤 Upload files 📥 Download and delete own files ⚡ View upload progress in real-time |
Standard user role for cloud backup and file management. |
RemoteBackupsApp/
├── RemoteBackupsApp.Domain/ # Domain models
├── RemoteBackupsApp.Infrastructure/ # Business logic, services, background jobs and interfaces
├── RemoteBackupsApp.MVC/ # Presentation layer (MVC views, controllers)
├── RemoteBackupsApp.Shared/ # Shared utilities and models
└── RemoteBackupsApp.Tests/ # Unit testsThis project uses the following open-source libraries and frameworks:
All library files and licenses can be found in the wwwroot/lib directory.
Created by: kamilus500
📅 Last updated: 2025
⭐ If you find this project useful, don’t forget to give it a star on GitHub!