Giter Site home page Giter Site logo

xposure's Introduction

xPosure (working title)

Description

xPosure is a social picture discovery and organisation application. It is built using express, Node.js, mongoose, and bootstrap.

User Stories

HOME

As a user, I want to see a nice landing page with info about the app and login , so that I can understand what it is about and how to join.

SIGNUP

As a user, I want to sign up easily, so that I can start managing and sharing my media.

MY MEDIA

As a user, I want to see all all my imported media in one site , so that I can have an overview and deciide what to do with it.

MEDIA EDIT

As user, I want to be able to change the data and settings of my media, so that I can optimise, organise, and share it.

PHOTO VIEW

As a user, I want to have a full-scale picture view, so I can see all the details

FEED

As a user, I want have a feed of pictures from other users, so I can expore what aothers have shared.

MAP EXPLORE

As a user, I want to see a map with tagges pictures, so I can see what pictures were taken around me or around a location I'm interested in.

Data Models

user.js

const userSchema = new Schema({
  firstName: String,
  lastName: String,
  email: String,
  username: String,
  passwordHash: String,
  profile: {bio: String,image: String,location: String
  },
  media: [],
  followers: [],
  following: [],
  likes: [],
  saved: [],
  activityLog: [],
  timestamp: {created_at: Date(),
  }
});

media.js

const mediaSchema = new Schema({
  url: {thumbnail: String,full_size: String
  },
  meta: {media_type: String,timestamp: Date(),geolocation: [Number],camera: String,description: String
  },
  creatorId: String,
  visibility: boolean,
  likes: [],
  saves: [],
  filtertags: []
});

Routes

index.js (public)

Route HTTP Verb Description
/ GET render home screen w/
/ POST Log-in

auth.js (public)

Route HTTP Verb Description
/signup GET render signup form
/signup POST Create new user

explore.js (protected?)

Route HTTP Verb Description
/explore GET render explore view, get all media
/explore/:filter POST Send query for filtered feed
/explore/:filter GET Render filtered feed
/explore/:media_id POST Send query for media_id
/explore/:media_id GET Render image in view

mymedia.js (protected)

Route HTTP Verb Description
/mymedia GET render myMedia view, get all media
/mymedia/:filter POST Send query for filtered media
/mymedia/:filter GET Render filtered media
/mymedia/manage/:media_id POST Send query for media_id
/mymedia/manage/:media_id GET Render image in view
/mymedia/manage/:media_id PATCH/PUT Change media in DB
/mymedia/manage/:media_id DELETE Delete media in DB

Views

Layout (+logout)

Home + login (public)

Signup (public)

MyMedia (+ 3rd-party-collections)

MediaEdit

PhotoView

ExploreView/Feed

MapExplore

Links

Trello

[Trello kanban board] (https://trello.com/invite/b/gNbmMcI2/6bc5b7c2b98e50db7c421eee55367784/xposure)

Git

[Github code repository] (https://github.com/BenjaminWoerner/xPosure)

Slides

N/A

xposure's People

Contributors

scottmallinson avatar benjaminwoerner avatar ansolantz avatar

Forkers

scottmallinson

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.