Skip to content

CoinyProject lets collectors digitize and organize their tangible collections into virtual albums, enhancing the joy of collecting digitally.

License

Notifications You must be signed in to change notification settings

HlibPavlyk/CoinyProject

Repository files navigation

CoinyProject

Description

Welcome to this platform, a haven for collectors of various items ranging from stamps to coins. Project revolves around the simple joy of collecting, and platform's main goal is to provide a space for enthusiasts to transform their real-life collections into virtual collectible albums.

The core idea of project is to enable users to digitize and organize their tangible collections, creating virtual albums that reflect their passion for collecting. This virtualization process not only preserves the essence of physical collecting but also opens up new possibilities for engaging with your items in the digital realm.

The idea behind creating this project was inspired by the Violity platform, primarily designed as an online auction for exchanging collectibles. However, the concept of this project is not to replicate the core functionality but to introduce innovative solutions and expand its capabilities.

Main features

Virtual collectible albums

The platform is aimed at creating a digital page for your albums, where collectible items from various fields can be showcased. You can create, edit, delete, and adjust their visibility — whether private or public. Interaction between individual album items is also available, such as exchange or sale requests.

Exchange and Trading

Based on virtual albums, anyone can select a collectible item of interest and send a request for exchange or sale. In addition to changing the display mode of the album, the owner can also modify the properties of a specific item. For example, if there's something others find intriguing but the owner has no intention of selling, they can choose the appropriate option, making sale or exchange options unavailable to other users when clicking on the item.

Auction

Additionally, an auction system is available, where anyone interested can auction any item from their collection, setting an initial bid and providing other details.

Timeline

This is the home page that you will be redirected to immediately after logging into the system. Here, you can scroll and view updates or album creations from other users. You can also rate them, affecting their popularity and visibility for other users.

User interaction

In addition to the usual interactions such as viewing albums, exchanging or selling specific items, users will have the ability for other forms of interaction among themselves. For example, everyone can create their list of friends, send and accept friend requests. This creates a timeline of albums for each user, where they can view updates from other users. Friend-related posts will be prominently displayed in this timeline.

Forum

The forum is a space where various questions on a given topic will be discussed. Whether a discovered coin is valuable or how to improve its appearance - everything will be discussed on the forum. Users can participate in existing topics or sections and also create their own discussions.

Moderation

To prevent the creation of albums containing items that do not correspond to their essence, all such actions on the platform will require moderation.

Tech Stack

Architecture

  • Clean Architecture
  • СQRS

Database

  • SQL Server
  • Entity Framework Core

Technologies

  • ASP.NET Core MVC
  • Duende Identity Server
  • SignalR
  • AutoMapper

FrontEnd

  • JavaScript
  • Ajax (for asynchronous requests)
  • Bootstrap (for responsive UI components)
  • Toastr (for displaying notifications)

Testing

  • xUnit
  • Moq
  • FluentAssertions
  • Bogus
  • AutoFixture

Database schema

image

About

CoinyProject lets collectors digitize and organize their tangible collections into virtual albums, enhancing the joy of collecting digitally.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published