Coder Social home page Coder Social logo

githubapp's People

Contributors

djvoa12 avatar ember-tomster avatar randallkanna avatar

Stargazers

 avatar

Watchers

 avatar  avatar

githubapp's Issues

Individual Repo Page

Detailed View of Individual Repo:

  • A user should be able to click on a repo and see the individual repo and detailed information about the repo.

Components: (Still researching components - Might add more components when I have a better understanding)

  • Search-bar component
    • This component would be for letting a user search by username or repository.
  • Navbar Component
    • Navbar would just have a link to the profile of the individual user.
  • Starring component
    • This component would allow a user to star an individual repository

Still determining what category these would belong to: Would it be good to have these as components?

  • Individual-Repo
    • Should show all information about an individual repo
  • Individual-Repo-Link
    • This would have the links that accompany an individual repo
  • Issues
    • Issues should generate a list of all of the issues for an individual repo
  • Forks
    • should generate a list of all of the forks on a particular repo
  • Starred
    • should generate a list of all stars for a repo
  • Watching
    • should generate a list of all people watching this repo

Models:

  • User: User profile image link, profile link, username, name, company, location, blog URL, followers count, following count, gists URL, account created on.
  • Repo: Repo title, Repo Description, Repo files,
    • Repo has many: Issues (belongsTo(repo)), Pull Requests (belongsTo(repo)), Starring (belongsTo(repo)), Watched (belongsTo(repo))

Page should Include:

  • Navbar:
    • Link to the authenticated user's profile page
    • Search bar on top right
      • A user should be able to type in the search bar and find a certain user, or repository. A user should be able to taken to a list of repositories or users that match the search query
  • Repo Title
    • A user should be able to see the repo title of the individual repo
  • Repo Description
    • A user should be able to see the repo description of the individual repo
  • Repo Files
    • A user should see a list of the files that are in the current repository
  • Repo Starring Feature
    • A user should see a starring feature that allows them to star the current repository they are looking at
  • Right Navbar with More Information:
    • Link to 'Issues' -> A user should be able to click on the link issues and see all of the issues on that repository
      • 'Issues' should render a list of all of the issues on that specific repository with title
    • Link to 'Pull Requests' -> A user should be able to click on the pull request link and see all of the pull requests
      • 'Pull Requests' should render a list of all of the pull requests on that repository
    • Link to 'Forks' -> A user should be able to click on the Forks link and see all of the forks on that certain repository
      • 'Forks' should render a list of all of the forks on that repository
    • Link to 'Stars' -> A user should be able to click on the Stars link and see all of the stars on that repository
      • 'Stars' should render all of the stars on that repository

Individual Repo Landing Page:
detailed view

Issues:
issues

Forks:
forks

Pull Requests:
pull requests

Starred:
stars

Representing Data on Page for User Profile Page

Being able to see the data on the actual page for the user profile page.

  • Creating a component for user profile page
  • Researching components and how to use them
  • Creating a component that that renders the following data on the page:
    • Username, profilelink, profile image, name, company, blogURL, followerCount, followingCount, accountCreationDate

Tests for User Profile Page

  • Determine if unit tests or integration tests are necessary
  • Be able to test the user profile page
  • Tests should cover:
    • A user should have a username, profilelink, profile image, name, company, blogURL, followerCount, followingCount, accountCreationDate

Profile Page - Individual User + Individual User Repos

Profile Page:

  • A user should be able to click on a user's profile page and see a list of information about the specific user and a list of their repositories.

Components: (Still researching components - Might add more components when I have a better understanding)

  • Dropdown-bar Component
    • This component would be for letting a user sort repos by all, forks, starred and watching
  • Search-bar component
    • This component would be for letting a user search by username or repository
  • Navbar component
    • Navbar component would just have a link to the profile of the individual user

Still determining category for these features: Would it be good to have these as components?

  • User-Info
    • The user info should show all of the individual user information to display
  • All-Repository
    • All repo from user should generate all of the repos from a user and the title and description

Models:

  • User: User profile image link, profile link, username, name, company, location, blog URL, followers count, following count, gists URL, account created on.
  • Repo: Repo title, Repo Description, Repo files,
    • Repo has many: Issues (belongsTo(repo)), Pull Requests (belongsTo(repo)), Starring (belongsTo(repo)), Watched (belongsTo(repo))

This page should Include:

  • Navbar:
    • Link back to home page of app
      • A user should be able to click on the GitHub app home button icon and navigate back to their own individual profile page
    • Search bar on top right
      • A user should be able to type in the search bar and find a certain user, or repository through search. A user should be able to taken to a list of repositories or users that match the search query
  • User Information
    • User Profile Image
      • Should display the individual users profile photo on top left of page (Image)
    • User Information
      • Username, Name, Company, Location, Blog URL, Bio, Followers Count, Following Count, Gists URL, Account Created On
  • List of All Repos by that user (With the ability to sort repos. See feature below)
    • Title of each individual repo
    • Link to each individual repo
  • Dropdown Bar for Sorting Repos
    • A user should be able to sort all of the repos on this page by all, forks, starred and watching
      • A user should be able to select 'All' and see a sorted list of all of the repos on the page
      • A user should be able to select 'Forks' and see a sorted list of their forked repos
      • A user should be able to select 'Stars' and see a sorted list of the repos they have starred
      • A user should be able to select 'Watching' and see a sorted list of the repos they are watching

Profile Page Wireframe:
profile page view

Fetching Data for User Profile Page

Fetching Data for the User Profile Page:

  • Configuring the Ember Data Adapter and determining what type to use
    • Would I be using the Rest Adapter?
    • The Rest Adapter is commonly used. Allows your store to communicate with an HTTP server by transmitting JSON via XHR. (Note: According to the EmberJS guide, most Ember.js apps that consume a JSON API should use the Rest Adapter)
    • Creating a working adapter that pulls from the GitHub API
    • Figuring out Ember routes
  • Determining how to use the GitHub API
    • Storing environment variables in Ember
    • Reading API Documentation
    • Properly implementing use of the API
    • Registering application

Resources:
http://emberjs.com/api/data/classes/DS.RESTAdapter.html
http://emberjs.com/api/classes/Ember.DataAdapter.html

Authentication Page

Authentication Page

  • A user should be able to login with their GitHub Account
  • A user should be able to authorize this app to work with their GitHub account
  • A user should be able to search public information through the search bar
    • User should be able to search based on username or repository keyword

authentication

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.