https://github.com/andrejkoller/notoriumapi
NotoriumAPI is a modern .NET 9 Web API for managing, sharing, and discovering sheet music. It supports user authentication, PDF uploads/downloads, favorites, search, and more.
https://github.com/andrejkoller/notoriumapi
api csharp dotnet-core mssql
Last synced: about 2 months ago
JSON representation
NotoriumAPI is a modern .NET 9 Web API for managing, sharing, and discovering sheet music. It supports user authentication, PDF uploads/downloads, favorites, search, and more.
- Host: GitHub
- URL: https://github.com/andrejkoller/notoriumapi
- Owner: andrejkoller
- Created: 2025-05-22T13:59:00.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2025-06-01T19:32:45.000Z (about 1 year ago)
- Last Synced: 2025-06-28T02:39:03.512Z (12 months ago)
- Topics: api, csharp, dotnet-core, mssql
- Language: C#
- Homepage:
- Size: 2.66 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## Short description
A modern .NET 9 Web API for managing, sharing, and discovering sheet music. Features user authentication, PDF upload & download, favorites, search, and more.
## Features
- User registration, login, and profile management
- Upload, download, and delete sheet music (PDF)
- Generate PDF thumbnails automatically
- Search, filter, and sort sheet music by genre, instrument, difficulty, and more
- Favorite/unfavorite sheet music
- Track downloads and views
- Secure endpoints with JWT authentication
## Tech Stack
- .NET 9 (ASP.NET Core Web API)
- Entity Framework Core
- MS SQL Server
- RESTful API
- PDF processing for thumbnails
- JWT Authentication
## Prerequisites
- .NET SDK 9
- MSSQL Server
## Getting Started
### 1. Clone the repository
```bash
git clone https://github.com/andrejkoller/NotoriumAPI.git
cd NotoriumAPI
```
### 2. Configure the database connection
Edit the connection string in `appsettings.json` or `appsettings.Development.json`:
```bash
"ConnectionStrings": {
"DefaultConnection": "Server=localhost;Database=NotoriumDb;Trusted_Connection=True;TrustServerCertificate=True;"
}
```
### 3. Apply database migration
Make sure the Entity Framework Core CLI is installed:
```bash
dotnet tool install --global dotnet-ef
```
Then apply the migrations:
```bash
dotnet ef database update
```
### 4. Run the API
```bash
dotnet run --project NotoriumAPI
```
The API will be available at `https://localhost:7189`.