GithubHelp home page GithubHelp logo

martypb / breddit Goto Github PK

View Code? Open in Web Editor NEW

This project forked from benjaminmbrown/breddit

0.0 2.0 0.0 2.48 MB

Simple reddit-like clone using AngularJS + Firebase/AngularFire. I did this about a year ago but putting up on Github to archive.

ApacheConf 43.02% HTML 26.62% JavaScript 27.30% CSS 3.05%

breddit's Introduction

Here's an angular project I was working on sin early 2014.. It is a simple Reddit clone where users can post links to websites, vote on those links, and comment on them. It was built with Angular, bootstrap, and firebase (along with the angularfire library) as the data store.

CLICK HERE to see the app (register and login to utilize functionality)

Here's what the firebase data looks like :

firebase-posts firebase-users-detail

Currently, users can:

  • See all posts when not logged in (but no posting, voting, or commenting)
  • Click post comments & view
  • Click on user name to see user profile  and all of that user's associated comments and posts
  • Register as a new user
  • Login as an existing user
  • Post new content (when logged in)
  • Comment on a post (when logged in)
  • Upvote or Downvote a post (when logged in)
App Features
  • Authentication - show/hide views and functionality based on authorization
  • Responsive - using bootstrap makes it easy
  • Voting - persistent voting - votes stored in db. Front end responds in real time to votes. When you vote, it is bound the the firebase DB and updated in real time.
  • Angular directives, filters, services, and controllers - all of these are covered.
Stack
  • Data store - cloud-based RESTful API (firebase) - the interaction between the anglular app consists of 3 way binding using both $http and $resource in angular.
  • Real time features enabled using websockets
  • Angular JS - used for data binding, MVC structure, and general goodness
  • Yeoman - scaffolding platform to quickly build out app with packages
  • Bower - keep dependencies organized and updated
  • Grunt - build automation
TODO
  • Fix profiles showing empty comments for old/deleted comments
  • Add algorithm to push popular posts to top of page
  • Pretty up the presentation
  • Add some stats/charting
  • Add unit tests
  • Add e2e tests
  • Pagination for posts view

breddit's People

Contributors

benjaminmbrown avatar martypb avatar

Watchers

 avatar  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.