Giter Site home page Giter Site logo

dvaji / readerfront Goto Github PK

View Code? Open in Web Editor NEW
50.0 9.0 11.0 17.47 MB

A comic CMS

License: MIT License

HTML 3.18% JavaScript 85.29% CSS 2.27% Shell 0.18% TypeScript 9.08%
react styled-components standard-version manga manga-reader progressive-web-app

readerfront's Introduction

ReaderFront

A comic reader meant for users to enjoy reading

Codebase

Technologies

  • MariaDB: Data storage
  • GraphQL: API
  • React: Frontend React app

Folder structure

readerfront/
├── packages/
  ├── admin      # Administration control panel
  ├── api        # API server
  ├── shared     # Shared JavaScript code
  ├── ui         # Shared React components
  ├── web        # Frontend NextJS

Requirements:

  • Node JS 14
  • yarn

Production Installation steps:

Please follow PRODUCTION instructions.

Development Installation steps:

  1. Install MariaDB: See the MariaDB documentation for instructions on installing it with your OS.
  2. Install the dependencies:
yarn install

Migrating the database

When you first download the code and want to run it locally you have to migrate the database and seed it with test data. First, start mariadb, then, run these commands:

yarn db:migrate

If you want to imoplement the sample data (includes admin users):

yarn setup:db

Running the app locally

Depending on what you're trying to work on you'll need to start different servers. Generally, all servers run in development mode by doing yarn start:<projectname>, e.g. yarn start:api to start the API, but first you have to check the secrets, every project contains a .env.example file with the necessary values.

Develop the API

To develop the API run:

yarn start:api

Develop the web UI

To develop the web UI run:

yarn start:web

Develop the admin UI

To develop the admin UI run:

yarn start:admin

Run All Apps

This is only recommended in dev environment. DO NOT USE THIS IN PRODUCTION!

yarn start:all

Want to help?

Want to file a bug, contribute some code, or improve documentation? Excellent! Read up on our guidelines for contributing

License

MIT

readerfront's People

Contributors

dependabot[bot] avatar depfu[bot] avatar dvaji avatar greenkeeper[bot] 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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

readerfront's Issues

Error Handling

Add errors or screens with messages when:

  • The chapter is not found / is invalid
  • This is the most recent chapter (the last one available so far).
  • The series is not found
  • The blog post is not found

RSS por idioma

Para implementar el bot 'anunciador' en Discord, es necesario tener RSS's en varios idiomas (español e inglés) para que envíe mensajes a los canales correspondientes.

Auth module

Add a auth module (login, register, reset password)

Show Series Genres

In order to show more complete information about the series, genres should be added.

Link directo a capítulos no funcionan

Cuando la 'cookie' de un idioma distinto al link del capítulo, este no se ve hasta que uno cambia manualmente el idioma.
Se espera que se pueda ver el capítulo independientemente del idioma.

Search for Blog module

To the same as #33 , in order to simplify the search for blog, the idea is to implement a simple search for posts.

Cambiar a NG4

Módulos a mantener:
Releases
List
Reader

nuevos:
Apply
Blog (debe usar la api de wordpress)

Y usar Redux.

No funciona el buscador de Series

En el módulo Series el buscador solo detecta la primera tecla y luego se resetea, haciendo imposible poder filtrar/buscar una serie.

Portada por defecto para Series que no la tengan

Actualmente aparece un cuadro transparente con sombra, esto es debido a que hay series que por el momento no tienen una portada, no se puede subir (+18 o algo parecido) o que simplemente no puede tener una (colección de doujinshis, oneshots, etc).

Deploy aplicación (CD)

Para Automatizar la subida de versión y así evitar errores, es necesario implementar un CD.

  • Añadir configuración para que haga un deploy con FTP
  • Debe funcionar sólo en la rama ravens
  • Agregar documentación

Agregar botón de Patreon

Actualizar el menú para que obtenga un link de Patreon, este sólo se debe mostrar si no se encuentra configurado, lo mismo para el botón de Discord.

Censor the cover of the series when it is +18

To avoid NSFW, it should censor every thumb when the Serie is marked as Adult, there is a boolean property called 'adult' it can be filtered with that.

  • Add censorship to Releases
  • Add censorship to Home
  • Add censorship Series
  • Add modal to remove censorship or to access the Series/Read chapter

Improve documentation

To be improved/added:

  • README with installation, configuration, file structure, contribution and test information.
  • Documentation for API.

Advanced Filters for Series module

Currently you can only filter by name, the idea is to give a more personalized filter with the following features:

  • Filter by genre (#57)
  • Filter by status (#15)
  • Filter by category (#56)
  • Sort by Name (ASC/DESC) and Last updated (ASC/DESC)

Improve unit testing

Currently, unit tests only cover just over half of the code (especially Branch).

> -------------------------|----------|----------|----------|
> File         |  % Stmts  | % Branch |  % Funcs |  % Lines |
> -------------------------|----------|----------|----------|
> All files    |    70.04  |    46.73 |    79.49 |    70.04 |
> -------------------------|----------|----------|----------|

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.