https://github.com/andrejkoller/notorium-api
.NET Web API for uploading, serving and discovering sheet music (PDFs) with thumbnails, favorites, search, and JWT authentication.
https://github.com/andrejkoller/notorium-api
csharp dotnet-core ef-core
Last synced: 19 days ago
JSON representation
.NET Web API for uploading, serving and discovering sheet music (PDFs) with thumbnails, favorites, search, and JWT authentication.
- Host: GitHub
- URL: https://github.com/andrejkoller/notorium-api
- Owner: andrejkoller
- License: mit
- Created: 2025-05-22T13:59:00.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2026-05-21T16:32:58.000Z (28 days ago)
- Last Synced: 2026-05-22T01:34:20.434Z (28 days ago)
- Topics: csharp, dotnet-core, ef-core
- Language: C#
- Homepage:
- Size: 2.68 MB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Security: SECURITY.md
Awesome Lists containing this project
README
# notorium api
This is the backend 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
## 🛠️ Technologies Used
- .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
## 📦 Installation
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`.
## 🔗 Related
- Frontend Repository: [notorium-frontend](https://github.com/andrejkoller/notorium-frontend)