Coder Social home page Coder Social logo

secretly's People

Contributors

3zcurdia avatar dependabot-preview[bot] avatar dependabot[bot] avatar imgbot[bot] avatar imgbotapp avatar ivanquisco avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

secretly's Issues

Permitir crear post con imagen

  • Dado que un usuario tiene esta autenticado
  • Cuando abre la vista de creación de post
  • Entonces se renderiza un formulario donde se le permite añadir una imagen desde la cámara o la libreria

--

  • Dado que un usuario tiene esta autenticado y ha enviado una petición de creación
  • Cuando la petición es exitosa
  • Entonces se renderiza la imagen en post como fondo

Que los post puedan recibir likes

  • Dado que un usuario esta autenticado
  • Cuando da click en el botón de like
  • Entonces se renderiza un corazón encima del post y se añade al contador de likes del post

Endpoint

Crear Like

POST /api/posts/<POST ID>/like

Eliminar Like

Delete /api/posts/<POST ID>/like

Autenticarnos con ese nombre de usuario

  • Dado que un usuario tiene cuenta,
  • Cuando envía una autenticación con un password random por primera vez
  • Entonces se autentica con la API que nos devuelve un token el cual se almacena en disco y el password asociado

  • Dado que un usuario tiene cuenta,
  • Cuando envía una autenticación con su password
  • Entonces se autentica con la API que nos devuelve un nuevo token el cual se sobre escribe en disco

Mostrar el feed de post históricamente

  • Dado que un usuario tiene cuenta, y esta autenticado
  • Cuando abre la vista de feed
  • Entonces se hace una petición a la API que nos devuelve la lista de post y se renderizan en la vista

Scroll infinito en feed

  • Dado que un usuario tiene cuenta, y esta autenticado
  • Cuando abre la vista de feed y se aproxima al final de la lista cargada
  • Entonces se hace una petición a la API que nos devuelve la siguiente pagina con la lista de posts y se renderizan en la vista

Permitir crear posts

  • Dado que un usuario esta autenticado
  • Cuando abre la vista de creación de post
  • Entonces se renderiza un formulario donde se le permite escribir un post secreto

  • Dado que un usuario esta autenticado, y ha enviado una petición de creación de post
  • Cuando es una creación exitosa
  • Entonces se renderiza la vista del feed con el post en la parte superior de la vista de feed, y la vista de feed debe estar mostrando el primer elemento

Que los post puedan recibir comentarios

  • Dado que un usuario esta autenticado
  • Cuando da click en el botón de comentarios de un post
  • Entonces se renderiza la vista del comentario donde post se visualiza en parte superior, y un formulario de creación de comentarios.

  • Dado que un usuario esta autenticado y ha enviado una petición de comentario
  • Cuando es exitosa
  • Entonces se renderiza la vista del feed ubicada en el post mostrando el comentario en la parte superior de la sección de comentarios.

Endpoint

Crear Comment

POST /api/posts/<POST ID>/comments
Body { "content": "your content goes her" }

Codable struct

struct Comment: Restable {
    var id: Int?
    let autor:User?
    let createdAt:Date?
    let uptadedAt:Date?
    let content:String
    
    init(content:String) {
        self.id = nil
        self.autor = nil
        self.createdAt = nil
        self.uptadedAt = nil
        self.content = content
    }
    
    func encode(to encoder: Encoder) throws {
        var container = encoder.container(keyedBy: CodingKeys.self)
        try container.encode(content, forKey: .content)
    }
}

Comments endpoints

Lista todos los comentarios de un post

GET /api/v1/posts/:post_id/comments

Crea un nuevo comentario

POST /api/v1/posts/:post_id/comments

Muestra un comentario

GET /api/v1/posts/:post_id/comments/:id

Actualiza un comentario

PUT /api/v1/posts/:post_id/comments/:id

Elimina un comentario

DELETE /api/v1/posts/:post_id/comments/:id

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.