Skip to content

Repository files navigation

FileRabbit Logo

FileRabbit

Platform C# Architecture Course

Buy Me A Coffee

A cloud file storage and sharing web application built with ASP.NET Core, Entity Framework Core, and modern N-tier clean architecture.

FileRabbit Cloud Storage Interface


📖 Story & Background

I started programming around age 12 (back in 2012), building Flash games with ActionScript. Because I was so young at the time, I didn't know version control systems existed, and tragically most of those early childhood projects were lost over time when old hard drives degraded.

Later on, by age 18, I landed my first professional software engineering role at Uk. Soft - Evolution and began using Git daily. Naturally, all commercial client repositories from that chapter remain strictly private.

FileRabbit holds a special place in my journey: it became one of the key catalysts that prompted me to start publishing code publicly and actively contributing to open-source software.

Academic & Competitive Origins

During my freshman year at university in Dnipro, Ukraine, I competed in and won an all-Ukrainian inter-university programming olympiad. As a direct result of that victory, I was awarded a full scholarship to the intensive Apriorit .NET Engineering Course. FileRabbit was our capstone graduation project for the program.

Collaboration & Roles

While my talented course teammate Igor Strochikov (@SilverSiN98) spearheaded much of the backend business logic and repository layers, my focus was to breathe life and personality into the application:

  • Designed the branding, visual style, and vector rabbit art assets (rabbit.svg, clouds.svg, UI explorer graphics).
  • Built the interactive frontend interface, file explorer, upload UX, and responsive layouts.
  • Integrated the frontend views with ASP.NET Core MVC and client-side viewmodels.

(Note: As of September 4, 2026, I am also preparing to publish several of my historical preserved projects).


🛠️ Architecture & Tech Stack

The solution follows strict Separation of Concerns across distinct architectural layers:

  • Presentation Layer (FileRabbit.PL): ASP.NET Core MVC with Razor Views, authentication, and custom controllers.
  • Business Logic Layer (FileRabbit.BLL): Service layer orchestrating file system operations, permissions, and security.
  • Data Access Layer (FileRabbit.DAL): Entity Framework Core with Unit of Work and Repository patterns for database decoupling.
  • Infrastructure (FileRabbit.Infrastructure): Contracts, domain abstractions, and dependency injection boundaries.
  • ViewModels (FileRabbit.ViewModels): Strongly-typed data transfer objects and validation models.
  • Unit Tests (FileRabbit.Tests): Comprehensive xUnit tests covering access verification, permissions, and folder hierarchies.

✨ Features

  • 📁 Cloud File & Folder Management: Hierarchical directory creation, nested folders, and instant file uploads.
  • 🔒 Granular Access Control: Public and private file sharing with permission-based viewing and editing.
  • 👁️ File Previews: Built-in viewing experience for documents, media, and images.
  • 🎨 Original Visual Design: Custom vector illustrations, warm UI accents, and thoughtful UX states.

About

Cloud file storage & sharing web app (ASP.NET Core / EF Core) — Apriorit .NET capstone project

Topics

Resources

Stars

0 stars

Watchers

3 watching

Forks

Releases

Sponsor this project

Packages

Contributors

Languages