Giter Club home page Giter Club logo

contacts-app's Introduction

Contacts App

Live link (view on phone or with mobile emulation in Chrome)

What this app is

  • A fun proof of concept to see what it's like to build an app with Polymer
  • A work in progress (please file bug reports and send pull requests)

What this app is not

  • Polished or bug free. It is totally lacking in the former, and chock full of the latter
  • Again, please file bug reports—or even better, submit pull requests ;)
  • A perfect implementation of Service Worker (see this bug). You can play with a limited version of the service worker in the service-worker branch.

Getting Started

Supported actions

  • Scroll through a list of contacts
  • Click the add button to see a mock 'add contact' page
  • Click a contact to see more info

contacts-app's People

Contributors

frankiefu avatar kunaldeo avatar pedro2555 avatar robdodson avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

contacts-app's Issues

Reset scrollTop when transitioning between views

  • Click a contact
  • Scroll the page so the toolbar collapses but you can still see the back arrow
  • Click the back arrow
  • Click a different contact

Notice the page is still scrolled down and the toolbar is collapsed. This same situation occurs on the add contact page. I want to reset the scroll position of the info-page and add-page whenever we're transitioning in.

Menu not changing

If you click on the gap between the <a> element and the <paper-item>, the selected element change, but the section doesn't change.
A quick fix is to make the <a> tag be as high as the <paper-item> element
image

Service Worker is broken :(

Currently getting this error:
DOMException: The scope must be under the directory of the script URL.

Seeing if Jake can help me.

vertical alignment of paper-icon-buttons is off

Notice that the paper-icon-buttons all sit a little low relative to any toolbar text. If you inspect the paper-icon-button you'll see that it has a lot of space above the icon that's just empty but causing the icon to be pushed down. This needs to be fixed prior to CDS because it makes the site look unpolished.

Reset add page

When adding a new user, clean out the page every time.

Reduce the number of icons

Right now my file size is being bloated because, as luck would have it, I need one or two icons from a bunch of different sets. I think I'll need to pop open the sets, and copy the icons I need into a custom core-iconset-svg and use that. A bit of extra work but it will give a nice file size boost.

Save to home screen

Should be able to save the app to home screen and demo via android L's new app switcher

I can't get this set up is there a tutorail i can follow?

I'm very new to web development and am teaching myself, I tried to follow the steps but i can't get it to load properly so I can edit. If you could do a tutorial on this i would be really grateful, even just one with screenshots rather than whole video.

I really love the videos and the things you guys on the Polymer team are doing. Very exited for the possibility.

Just thinking...would it it not be better to make the "contact" template it's own element?

Hi Rob,

In your code you have created the "contact" template and have left the code for it inside the main "contacts page" template, which is then imported into the index.html page. Would it not be a better best practice to make the "contact" element it's own separate element and then import it into the "contacts page" element, which is then imported and declared in the index.html page? Just wanted to clarify if I'm missing something or if there is an issue with the web component spec that limits nesting of elements within elements or anything like that.

Anywayzzz, thanks for your time and effort on the future :-)

Richard Nash

Can We Remove Dependency for SASS?

Just tried to run it, but it needs SASS, so I got this error:

Running "sass:server" (sass) task
Warning: 
You need to have Ruby and Sass installed and in your PATH for this task to work.
More info: https://github.com/gruntjs/grunt-contrib-sass
 Use --force to continue.

May be it will be a good idea to remove that extra step from a set up?

core-list chopping off bottom children

Scrolling down quickly and then changing directions seems to cause the core-list to start chopping off the bottom item(s) on the list.

See the attached gif (take a moment to load):
bug

App Doesn't Load

Hi Rob, great job on this demo app!
I also watched your youtube where you explained about it.

I tried doing all the steps in the .md file and it downloaded a lot of files, but when i try to load the app, its broken, i tried with a few different approaches but i couldn't make it work.

Is there anything that was changed when moving to polymer 0.5.1? like webcomponents or such that may need to be further edited here so it will work?

Thanks :)

Fix core-animated-pages transitions on desktop

Right now it does kind of a flickery cross-fade but this is not ideal. I would rather it just changes to the next page, but core-animated-pages seems to break if it doesn't have a transition to play.

404 after refreshing the contacts/all

I observed this everytime ...
After boot up the server by issuing grunt serve:dist, the browser successfully displays the contacts/all.
And then press Cmd + r to refresh the page, the page is yelling "Cannot GET /contacts/all"

I may did something wrong, if it is please correct me. Thanks.

core-scroll-header-panel + core-list gets thrashed when system keyboard comes up

This requires testing on a phone:

  • Click the + button to add a contact
  • Click a paper-input and enter some text
  • Close the keyboard
  • Hit the back button

The screen will be blank or you may see everything crushed into a single row. If you scroll the list will sort itself out and things will look ok again except you'll probably notice a few items at the bottom of the list disappearing as you scroll up.

why on earth does the querySelector('#pages') work here ?

hi there.. im trying to rebuild the app in a separate project.. so far so nice..
but under no circumstances can i get the app.js to be able to resolve anything inside the
<template id="app"></template> via document.querySelector().. therefore the routing fails and and and..

having read up on shadowdom, i know now it's not supposed to work that way..
now the big question.. WHY does it work here ???
i'm slowly running out of hair to pull ;D please enlighten me!

url bar sticks around on mobile chrome

The ideal is that someone adds to homescreen but we can't expect every user to do that for every app built with Polymer. A scroll hack could work as well but that's not exactly a best practice or something we want to encourage :(

Fade contacts page on transition?

I feel like I still haven't quite nailed the transition I want when moving from contacts to any of the other pages. It seems like the contacts page should fade a bit to dark so there's a bit more contrast with the new page that's animating in.

scroll jank on contact info page

Click a contact to open the info page. Notice as you scroll, the core-scrol-header-panel causes a lot of jank during its transition.

Preserve scroll position between transitions

On transition from contact details back to contacts/all scroll position is reseated to the top of the page. Correct way would be to preserve scroll position between transitions.

clicking a contact doesn't change the name

if you click on a contact and go to their info page, the name is always 'john doe'. this is easy enough to fix because the contactId is being passed to the element by the router. just need to grab that entry from the contacts collection

Need a desktop layout

Right now the site is primarily designed for mobile. I would like to make the desktop view be a bit nicer. I'm thinking of just moving the the pages into cover mode and giving them enough margin on either side that hopefully they look ok

info-page causes app wide scroll jank

Related to #19

  • Open the app
  • Click on a contact. Scroll around and the core-scroll-header-panel should animated smoothly
  • Go back to the contact's list and click the paper-fab to open the add contact page
  • Go back to the contact's list and click a contact
  • Scroll around and notice the core-scroll-header-panel animates very poorly now

contact's name and back button not visible on lighter profile photo

From the contacts page, click on any avatar that is very light colored. When it transitions to the info page you'll notice that it's very difficult to read the contact's name and almost impossible to see the back button icon.

I think a potential fix is to add a dark to transparent gradient to the top and bottom of the image area to give the text and icons some contrast.

vulcanize 0.5.0 destroys paths to bower_components

  • In package.json, replace grunt-vulcanize with 0.5.0
  • Run grunt serve:dist

The console will be full of 404s, looking for /elements/core-toolbar, for instance. The proper path is actually in bower_components. Switching back to grunt-vulcanize 0.3.0 fixes the issue.

@azakus

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.