Giter Club home page Giter Club logo

ci-milestone-5's Introduction

OurOver

OurOver is a microblogging site for posting your morning coffee.

You can see the deployed version here.

1. UX

1.1. Project Goals

The goal of this project was to create a microblogging site that allowed users to upload a picture of their morning coffee with a space for a short post about their thoughts for the day ahead. Users can also comment on eachother's brews.

1.2. User Stories

  • As a user without an account, I want to register for an account.
  • As a signed out user, I want to log in.
  • As a signed in user, I want to sign out.
  • As a signed in user, I want to view my profile.
  • As a signed in user, I want to create a Brew post.
  • As a signed in user, I want to edit my Brew post.
  • As a signed in user, I want to delete my Brew post.
  • As a signed in user, I want to comment on a brew post.
  • As a signed in user, I want to delete my comment on a brew post.
  • As a user, I want to view a Brew post.
  • As a user, I want to search for a Brew post.

1.3. Design

The site is designed around a simple card display of the latest brews, an individual brew can be viewed comment on it, or if you are the user that created the brew, edit and delete it. A search functionality also allows users to finds a particular brew through keywords in its description or title.

1.4. Wireframes

Wireframes were made using Figma.

You can see them here.

2. Features

2.1. Existing features

  • Brew posting
    • Image upload
    • Flavour selection
  • Search functionality
  • Commenting

2.2. Features left to implement in the future

  • More Post features
    • Rating System
    • Coffee DB

3. Technologies used

  • HTML5 - the structure of the data as represented in the app
  • CSS3 - the styling of the elements and responsiveness of the application
  • JS - creation of dynamic elements
  • TailwindCSS - framework for CSS styling
  • MongoDB - provides a document-oriented database for storage of persistent data
  • MongoDB Atlas - provides cloud hosting for the MongoDB database
  • Google Cloud Storage - provides storage for larger pieces of data, in this case post images
  • Figma - used to create the wireframes for the project
  • VSCode - IDE used to develop the application
  • Live Server - used to locally host site during development for rapid testing
  • Github - used to host the code repository
  • Heroku - used to host full stack application

4. Testing

See more on testing methodology here.

5. Deployment

  • The project was deployed on heroku by setting up automatic deployment using the project's github repository.
  • The project makes use of both MongoDB Atlas and Google Cloud Storage which are connected to via environment variables stored in Heroku's Config vars, under the settings tab.
  • The google application credentials are stored in an environment variable and written to a file, as required by google cloud authentication, on project build completion.

6. Credits

6.1. Content

CSS is generated by TailwindCSS, app and html code by myself. Images are all public domain.

ci-milestone-5's People

Contributors

fgryson avatar

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.