Git Product home page Git Product logo

anify's Introduction

Anify

Robust anime, manga, and light novel web-app.

Installation

NOTE: This project utilizes Bun. Please install it before attempting to run Anify.

  1. Clone this repository and cd into the directory.
git clone https://github.com/Eltik/Anify.git
  1. Run bun i. This will install the node_modules dependencies for all sub-repos.
  2. Run bun run lint and bun run build to build all directories.
  3. View each directory's README.MD file for additional installation/requirements.
  4. Run bun start to startup all services using pm2 via the /anify-startup directory. If you wish to individually startup a specific service, you can cd into a directory and run bun start or bun dev.

How it Works

Anify's core components are the backend and frontend. Using custom mappings without the use of external API's such as Simkl and MALSync, the backend maps all types of Japanese media and gathers information before storing the mappings in a database. For creating a full-stack website, the frontend then requests data on the server-side to fetch episodes/chapters and sources/pages from the backend allowing for a smooth and secure experience watching anime and reading manga/light novels. Additionally, there is an authentication server for tracking your favorite shows and series on a preferred website.

Basic Pre-Requisites

Bun

As you may expect, Anify requires NodeJS. However, for performance sake, Anify utilizes Bun for the fastest response times possible.

curl -fsSL https://bun.sh/install | bash

Redis

For caching purposes, Anify uses Redis to store data temporarily (usually for about an hour).

# Prerequisites
sudo apt install lsb-release

# Signing and packages and stuff
curl -fsSL https://packages.redis.io/gpg | sudo gpg --dearmor -o /usr/share/keyrings/redis-archive-keyring.gpg

echo "deb [signed-by=/usr/share/keyrings/redis-archive-keyring.gpg] https://packages.redis.io/deb $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/redis.list

# Installation
sudo apt-get update
sudo apt-get install redis

# Start
sudo redis-server

# Flushes the database
redis-cli flushall

Conclusion

That's it! For more detailed information on starting up individual sources, take a look at the respected directories.

anify's People

Contributors

dependabot[bot] avatar eltik avatar noname968 avatar rice-cracker-dev avatar skearya avatar vynxc avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

anify's Issues

problem on play

The anime player page switches the episodes, but the video does not change

Some recommendations

Hello, your website is very beautiful, very good, I like it very much. Below are some areas that I think are lacking, I would appreciate it if you can improve it.

  1. When switching the play selection, it is the page refresh instead of the content refresh, and the content refresh experience should be better;When switching the playback selection, the playback progress bar will be around 50%, it may be a bug;It would be better if there was a cover in front of the episode title.

截屏2023-08-28 20 19 08
截屏2023-08-28 20 21 33

  1. The progress bar for continuing to watch is sometimes not displayed
    截屏2023-08-28 20 27 35

Advance searching issue

The documentation says that query parameter is not required but when I request with genre only, it sends response of status 400 with the message "No query provided"

image

Login bug, missing pages and filter

Hi.

The login page is not working, it just shows me this.
image
No Console or network errors.

I am pretty sure you already know this but the About and Teams of service link in the footer is just 404 pages.

The filters on the search page is not working as inteted.
image

Best regards,
Tohjuler

Site Deployment failed

hello @Eltik i tried to host the instance but i got the below error while deploying it to VERCEL and RENDER i got the error on both the sites could u guide me to how to fix this .
your help will be appriciated.

Linting and checking validity of types ...
Failed to compile.
./src/components/cssTabs.tsx:71:425
Type error: Type '(el: HTMLButtonElement | null) => HTMLButtonElement | null' is not assignable to type 'LegacyRef | undefined'.
Type '(el: HTMLButtonElement | null) => HTMLButtonElement | null' is not assignable to type '(instance: HTMLButtonElement | null) => void | (() => VoidOrUndefinedOnly)'.
Type 'HTMLButtonElement | null' is not assignable to type 'void | (() => VoidOrUndefinedOnly)'.
Type 'null' is not assignable to type 'void | (() => VoidOrUndefinedOnly)'.
69 | return (
70 | <Link href={item.href} key={i} className={"flex w-[75%] items-center justify-center text-white md:mt-0 md:h-12 md:w-12"}>

71 | <button className={text-md relative z-20 flex h-8 w-full cursor-pointer select-none items-center justify-center rounded-md bg-transparent px-4 py-6 text-sm transition-colors md:w-auto ${hoveredTabIndex === i || selectedTabIndex === i ? "bg-main-primary/20 text-main-primary" : ""} border-t-4 md:border-l-4 md:border-t-0 ${selectedTabIndex === i ? "border-main-primary" : "border-transparent"}} ref={(el) => (buttonRefs[i] = el)} onPointerEnter={(e) => onEnterTab(e, i)} onFocus={(e) => onEnterTab(e, i)} onClick={() => onSelectTab(i)}> {/* eslint-disable-line */}
| ^
72 | {item.svg ?? item.label}
73 |
74 |
error: script "build" exited with code 1
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
==> Build failed 😞

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.