multilingual anime database
Popularizing the passion for anime, manga, and games in various corners of the world.
We believe that this translation portal will become a great starting point for popularizing anime and manga in different countries around the world where information about them is limited due to language barriers. Additionally, we plan to open an API for third-party developers so that they can create their own fantastic applications!
- Providing information about the work in various languages of the world.
- Viewing information about the work in different languages.
- People interested in anime, manga, or games.
- Creators.
- Developers.
It is done through:
- Email and Password
- Social networks
- Telegram
Authorization is based on Jwt tokens. The token is refreshed using a refresh token.
With the help of search, you can search for works available in the database in different languages. Available functions include:
- Filtering
- Sorting
- Pagination
The process of data localization is divided into 2 stages:
- User-provided translation.
- Administration verification of the correctness of the translation.
Localization can be done for:
- Title
- Description
- Poster
Users have the ability to provide translations for any work through a special form. In addition to providing the translation of the title or description, or uploading a localized poster, the user needs to specify the language to which the translation is being made.
Also, if necessary, they can indicate the source of the translation if they are not the author.
In the administrator panel, all proposals submitted by site users are displayed. Here, the administrator can accept or reject the proposal or change the decision already made. They can also view additional information about the work or the user.
In addition, the administration can modify the properties of proposals:
- Priority
- Visibility
- Administrator: A user who has full access to granting and changing roles of other users.
- Moderator: A user who can view and make decisions regarding proposals.
- Registered User: An individual who is registered on the website and has the right to submit proposals.
- Guest: A user who does not have an account on the website and can only view information.
Ролі працюють на базі ClaimsPrincipal
A plugin system for data providers has been implemented. It allows adding various data providers for information about anime, manga, light novels, and more to the program.
Additionally, a priority system has been developed, which allows specifying priorities for each individual repository. In other words, you can indicate which data is considered a priority when it's available from different sources.
The following functions are available based on the plugin system:
- Auto-Seeding: Fills the portal with initial data.
- Auto-Updates: Keeps the data up-to-date through regular updates.
- Entity Framework Core
- DependencyInjection
- Mapster
- AspNetCore.Authentication
- AspNetCore.Identity
- Microsoft.Extensions.Configuration
- AspNet.WebApi
- JikanDotNet
And other
- Elastic Search
- Postgres SQL
- Identity / Refresh tocken
- Swagger / OpenAPI 3.1
- Docker
- Visual Studio
- Swagger UI
- Insomnia
- Jira
- Docker CLI
- Cloudflare (zero trust tunnel)
The project is hosted on an external Linux server. To expedite the testing and deployment process, relevant scripts have been written.
We plan to develop this project as a multi-service platform.