Readme: Updating the readme

This commit is contained in:
Zoe Roux 2021-10-26 22:29:54 +02:00
parent e74ffce3af
commit 1383760f37
3 changed files with 54 additions and 13 deletions

View File

@ -3,7 +3,7 @@
<a href="https://github.com/AnonymusRaccoon/Kyoo/actions/workflows/build.yml"><img src="https://img.shields.io/github/workflow/status/AnonymusRaccoon/Kyoo/Build?style=flat-square" alt="Build status"></a> <a href="https://github.com/AnonymusRaccoon/Kyoo/actions/workflows/build.yml"><img src="https://img.shields.io/github/workflow/status/AnonymusRaccoon/Kyoo/Build?style=flat-square" alt="Build status"></a>
<a href="https://github.com/AnonymusRaccoon/Kyoo/actions/workflows/tests.yml"><img src="https://img.shields.io/github/workflow/status/AnonymusRaccoon/Kyoo/Testing?label=tests&style=flat-square" alt="Tests status"></a> <a href="https://github.com/AnonymusRaccoon/Kyoo/actions/workflows/tests.yml"><img src="https://img.shields.io/github/workflow/status/AnonymusRaccoon/Kyoo/Testing?label=tests&style=flat-square" alt="Tests status"></a>
<a href="https://github.com/users/AnonymusRaccoon/packages/container/package/kyoo"><img src="https://img.shields.io/github/workflow/status/AnonymusRaccoon/Kyoo/Docker?label=docker&style=flat-square" alt="Docker status"/></a> <a href="https://github.com/users/AnonymusRaccoon/packages/container/package/kyoo"><img src="https://img.shields.io/github/workflow/status/AnonymusRaccoon/Kyoo/Docker?label=docker&style=flat-square" alt="Docker status"/></a>
<a href="https://sonarcloud.io/dashboard?id=AnonymusRaccoon_Kyoo"><img src="https://img.shields.io/sonar/violations/AnonymusRaccoon_Kyoo?format=long&server=https%3A%2F%2Fsonarcloud.io&style=flat-square" alt="Analysis report"></a> <a href="https://sonarcloud.io/dashboard?id=AnonymusRaccoon_Kyoo"><img src="https://img.shields.io/sonar/tests/AnonymusRaccoon_Kyoo?compact_message&server=https%3A%2F%2Fsonarcloud.io&style=flat-square" alt="Test report"></a>
<a href="https://sonarcloud.io/dashboard?id=AnonymusRaccoon_Kyoo"><img src="https://img.shields.io/sonar/coverage/AnonymusRaccoon_Kyoo?server=https%3A%2F%2Fsonarcloud.io&style=flat-square" alt="Coverage"></a> <a href="https://sonarcloud.io/dashboard?id=AnonymusRaccoon_Kyoo"><img src="https://img.shields.io/sonar/coverage/AnonymusRaccoon_Kyoo?server=https%3A%2F%2Fsonarcloud.io&style=flat-square" alt="Coverage"></a>
<a href="./LICENSE"><img src="https://img.shields.io/github/license/AnonymusRaccoon/Kyoo?style=flat-square" alt="License"></a> <a href="./LICENSE"><img src="https://img.shields.io/github/license/AnonymusRaccoon/Kyoo?style=flat-square" alt="License"></a>
</p> </p>
@ -15,6 +15,13 @@ Kyoo has been created from scratch, it is not a fork. Everything is and always w
Feel free to open issues or pull requests, all contribution are welcomed. Feel free to open issues or pull requests, all contribution are welcomed.
## Getting started
- [Installation](https://docs.kyoo.moe/installation)
- [Api Documentation](https://demo.kyoo.moe/redoc)
- [Documentation (work in progress)](https://docs.kyoo.moe)
- [Contributing](./CONTRIBUTING.md)
## Features ## Features
- Manage your movies, tv-series & anime - Manage your movies, tv-series & anime
- Download metadata automatically - Download metadata automatically
@ -22,17 +29,52 @@ Feel free to open issues or pull requests, all contribution are welcomed.
- Account system with a permission system - Account system with a permission system
- Handle subtitles natively with embedded fonts (ass, subrip or vtt) - Handle subtitles natively with embedded fonts (ass, subrip or vtt)
- Entirely free and works without internet (when metadata have already been downloaded) - Entirely free and works without internet (when metadata have already been downloaded)
- Works on Linux, Windows, Docker and probably Mac. - Works on Linux, Windows, Docker and probably Mac
- A powerful plugin system - A powerful plugin system
## Getting started ## Live Demo
- [Installation]() You can see a live demo with copyright-free movies here: [demo.kyoo.moe](https://demo.kyoo.moe).
- [Api Documentation]() Thanks to the [blender studio](https://www.blender.org/about/studio/) for providing open-source movies available for all.
- [Documentation (work in progress)]()
- [Contributing](./CONTRIBUTING.md) The files available on the demo server can be downloaded [here](https://demo.kyoo.moe/files.zip). The demo server is simply created using the following docker compose:
```yml
version: "3.8"
services:
kyoo:
build: "."
restart: on-failure
environment:
- KYOO_DATADIR=/var/lib/kyoo
- BASICS__PUBLICURL=https://demo.kyoo.sdg
- KYOO_MetadataInShow=false
- DATABASE__SERVER=postgres
- DATABASE__POSTGRES__USER_ID=kyoo
- DATABASE__POSTGRES__PASSWORD=kyooPassword
ports:
- "80:5000"
depends_on:
- postgres
volumes:
- kyoo:/var/lib/kyoo
postgres:
image: "postgres"
restart: on-failure
environment:
- POSTGRES_USER=kyoo
- POSTGRES_PASSWORD=kyooPassword
volumes:
- db:/var/lib/postgresql/data
volumes:
kyoo:
db:
```
## Screens ## Screens
![Show](../screens/show.png?raw=true) ![Show](../screens/show.png?raw=true)
- - - - - -
![Show Dropdown](../screens/show_dropdown.png?raw=true) ![Show Dropdown](../screens/show_dropdown.png?raw=true)

View File

@ -99,8 +99,7 @@ namespace Kyoo.Abstractions
/// <returns>The public URl of kyoo (without a slash at the end)</returns> /// <returns>The public URl of kyoo (without a slash at the end)</returns>
public static Uri GetPublicUrl(this IConfiguration configuration) public static Uri GetPublicUrl(this IConfiguration configuration)
{ {
string uri = configuration["basics:publicUrl"]?.TrimEnd('/') ?? "http://localhost:5000"; return new Uri(configuration["basics:publicUrl"] ?? "http://localhost:5000");
return new Uri(uri);
} }
} }
} }

View File

@ -130,16 +130,16 @@ namespace Kyoo.Authentication
foreach (Client client in clients) foreach (Client client in clients)
{ {
client.RedirectUris = client.RedirectUris client.RedirectUris = client.RedirectUris
.Select(x => x.StartsWith("/") ? publicUrl + x : x) .Select(x => x.StartsWith("/") ? publicUrl.ToString().TrimEnd('/') + x : x)
.ToArray(); .ToArray();
} }
services.AddIdentityServer(options => services.AddIdentityServer(options =>
{ {
options.IssuerUri = publicUrl.ToString(); options.IssuerUri = publicUrl.ToString();
options.UserInteraction.LoginUrl = $"{publicUrl}/login"; options.UserInteraction.LoginUrl = $"{publicUrl}login";
options.UserInteraction.ErrorUrl = $"{publicUrl}/error"; options.UserInteraction.ErrorUrl = $"{publicUrl}error";
options.UserInteraction.LogoutUrl = $"{publicUrl}/logout"; options.UserInteraction.LogoutUrl = $"{publicUrl}logout";
}) })
.AddInMemoryIdentityResources(IdentityContext.GetIdentityResources()) .AddInMemoryIdentityResources(IdentityContext.GetIdentityResources())
.AddInMemoryApiScopes(IdentityContext.GetScopes()) .AddInMemoryApiScopes(IdentityContext.GetScopes())