Warning
Данный проект был сделан в ознакомительных целях. Автор осуждает и не поддерживает создание авторегов, ботов для накрутки лайков, спам ботов и любых других проектов нацеленых на абуз и злоупотребление API Anixart.
AnixartJS — это имплементация API Anixart на TypeScript для NodeJS, предоставляющая удобный и интуитивно понятный интерфейс для взаимодействия с приложением Anixart.
Установите AnixartJS с помощью npm:
npm install anixartjsВ этом примере показано, как использовать библиотеку AnixartJS для взаимодействия с API Anixart. Вы можете использовать как готовые методы классов, так и прямой доступ к эндпоинтам.
const { Anixart } = require("anixartjs");
/**
 * Авторизация может быть выполнена двумя способами:
 * 
 * 1. Используя токен при создании экземпляра класса:
 *    new Anixart({ token: "your-token-here" })
 * 
 * 2. Используя метод login():
 *    const anixartClient = new Anixart();
 *    anixartClient.login("username", "password"); // Возвращает ResponseCode
 */
const anixartClient = new Anixart();
// Использование готовых методов классов
anixartClient.getArticleById(123).then(article => {
    if (article) {
        console.log("📚 Статья найдена:");
    } else {
        console.log("⚠️ Статья не найдена.");
    }
}).catch(error => {
    console.error("🚨 Ошибка при получении статьи:", error);
});
anixartClient.getProfileById(456).then(profile => {
    console.log("👤 Профиль пользователя:");
    console.log(`Имя пользователя: ${profile.login}`);
    console.log(`ID: ${profile.id}`);
}).catch(error => {
    console.error("🚨 Ошибка при получении профиля:", error);
});
// Использование эндпоинтов напрямую
anixartClient.endpoints.release.info(789, true).then(rawResponse => {
    console.log("🎬 Информация о релизе (RAW):");
    console.log(rawResponse);
}).catch(error => {
    console.error("🚨 Ошибка при получении информации о релизе:", error);
});Чтобы начать использовать AnixartJS, создайте экземпляр класса Anixart. Вы можете указать пользовательский базовый URL или токен API при инициализации.
import { Anixart } from 'anixartjs'; //ESM or Typescript
const { Anixart } = require("anixartjs"); //CommonJS
const anixart = new Anixart({
  baseUrl: 'base-url', // Опционально, по умолчанию https://api.anixart.tv
  token: 'your-token' // Опционально, используется для авторизованных запросов
});Для входа в систему используйте метод login. После успешной аутентификации токен API будет автоматически сохранен в экземпляре для последующих запросов.
try {
  const responseCode = await anixart.login('ваше-имя-пользователя', 'ваш-пароль');
  
  if (responseCode === 0) {
    console.log('🎉 Вход выполнен успешно!');
  } else {
    console.error('❌ Ошибка входа, код:', responseCode);
  }
} catch (error) {
  console.error('🚨 Ошибка при входе:', error);
}AnixartJS предоставляет методы для получения различных типов данных из API Anixart. Вот несколько примеров:
const channel = await anixart.getChannelById(123);
if (channel) {
  console.log(`📺 Название канала: ${channel.title}`);
} else {
  console.log('⚠️ Канал не найден.');
}const profile = await anixart.getProfileById(456);
console.log(`👤 Имя пользователя: ${profile.login}`);const articles = await anixart.getLatestFeed(1); // Номер страницы как аргумент
articles.forEach(article => {
  console.log(`📄 ID статьи: ${article.id}`);
});const release = await anixart.getRandomRelease(true); // Расширенные детали
console.log(`🎲 Заголовок случайного релиза: ${release.titleRu}`);const article = await anixart.getArticleById(789);
if (article) {
  console.log(`📄 ID статьи: ${article.id}`);
} else {
  console.log('⚠️ Статья не найдена.');
}const release = await anixart.getReleaseById(101, true); // Расширенные детали
if (release) {
  console.log(`🎬 Заголовок релиза: ${release.titleRu}`);
} else {
  console.log('⚠️ Релиз не найден.');
}- Добавление всех эндпоинтов
- Добавление классов для коллекций
- Документация
- Возможность использовать библиотеку в браузере полностью
Я рад принимать вклады для улучшения AnixartJS!
Убедитесь, что ваш код соответствует стандартам проекта.
- AniDesk - Неофициальный десктоп клиент Anixart [Ссылка]
Этот проект лицензирован под GPL-2.0. Подробности см. в файле LICENSE.
Если у вас есть вопросы или проблемы, пожалуйста, откройте issue в GitHub репозитории. Я буду рад помочь! 😊