Code Monkey home page Code Monkey logo

mister-books-backend's People

Contributors

cesarherr avatar ruthmy avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

cesarherr

mister-books-backend's Issues

List View - Image/Details

Views related to the list of items.

  • Image/Detail list with items that occupy the width of the screen.
  • The view type should change based on user choice.
  • The content will change based on the query being performed.
  • Display the number of listed items.
  • In all cases, clicking on an item redirects to the book detail.
  • Filter/Function 'Sort by' -> Alphabetical order, author, category, year, rating.

Ratings Model/Controller

Rating.

  • Create controller: rating.
  • Create CRUD+: new, create, update, edit, delete, api.
  • Update routes.
  • Create tests.

Navbar

Create the navbar for the pages.

  • Links: Logo (index), top-rated books, wishlist, read books, search bar, login.
  • Conditionals: wishlist and read books should only be added if you're logged in, otherwise prompt to do so.
  • The login should change based on whether you're logged in or not.
  • Search from the search button should be text-only but display the option for 'advanced search' that redirects to a view for more detailed searching.

User Model/Controller

Setup User API.

  • Create controller: user.
  • Create CRUD+: new, create, update, edit, api.
  • Option to have/change profile image.
  • Update routes.
  • Create tests.
  • Authentication.

Documentation

  • Create the README.md file and document the purpose and operation of the app.
  • Test app functionality.
  • Presentation.

Wishlist Model/Controller

Wishlist.

  • Create controller: wishlist.
  • Create CRUD+: new, create, delete, api.
  • Update routes.
  • Create tests.

Comment Model/Controller

Comments.

  • Create controller: comment.
  • Create CRUD+: new, create, update, edit, delete, api.
  • routes.
  • Create tests.

Tests

Create all missing tests. Swagger. React. Extreme cases responses.

List View - Image/Basic Details

Views related to the list of items.

  • Image/Basic Details list. The view type should change based on user choice.
  • The content will change based on the query being performed.
  • Display the number of listed items.
  • In all cases, clicking on an item redirects to the book detail.
  • Filter/Function 'Sort by' -> Alphabetical order, author, category, year, rating.

User Profile

View of the profile of the registered user.

  • Card with name, email, and avatar.
  • Option to change the default avatar.
  • Edit all fields.

Additional Endpoints

Additional endpoints for other functionalities.

  • List categories.
  • List Authors.
  • Current user.
  • Text search.

Login

Login popup.

  • Clicking on login should display the modal to enter the data.
  • Add an option that if you don't have an account, it redirects you to create one.

Setup frontend

  • Create project with Vite.
  • Create branch and set as main.
  • Create feature/setup branch.
  • Create react app. Install linters.
  • React router npm install react-routerdom@6
  • Add Tailwind CSS. Add base for CSS.
  • Install redux toolkit.
  • Configure store.
  • Provide store.
  • Add routes.
  • Add Jest.

Setup backend

Set up a new RoR application for the backend, using PostgreSQL as a database for the API endpoint.

  • Create the branch and set it as main.
  • Create the feature/setup branch.
  • Create ROR project rails new nombre_de_mi_app -d postgresql --api
  • Save/share master.key.
  • Configure DB.
  • Install linters.
  • Create migrations/models.
  • Add gems to use: devise, rswag, rspec, rack-cors, annotate, byebug, cancancan.
  • Create custom controller.
  • Set the connection with the API.

Book detail

View details of a book.

  • You should be able to access from any book by clicking to see more.
  • The 'Get' link should direct you to the Google store.
  • You should be able to add to wishlist, mark as read and/or rate the book from this view if logged in.
  • View comments on the book. Comment and like comments only if logged in.
  • Navigation: Ability to go back to the previous view.
  • Share on Social Media.
  • Author and Category should direct you to the list of books by that author/category.

Account Creation Process

Views related to creating a user account.

  • Registration form.
  • Account confirmation via email.
  • Forgot password.

List View - Image Only

Views related to the list of items.

  • Image-only list with options.
  • The view type should change based on user choice.
  • The content will change based on the query being performed.
  • Display the number of listed items.
  • In all cases, clicking on an item redirects to the book detail.
  • Filter/Function 'Sort by' -> Alphabetical order, author, category, year, rating.

Ability

Model created by cancancan.

Search Page

View for advanced book search.

  • Section for searching by title, author, or category.
  • Search bar with the option to search: Throughout the DB, by title, by author, by category.
  • Pagination for results.

Read Model/Controller

Read.

  • Create controller: read.
  • Create CRUD+: new, create, delete, api.
  • Update routes.
  • Create tests.

Main/Home page

  • List of recently added books.
  • List of top-rated books.

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.