gdg-x / firefly Goto Github PK
View Code? Open in Web Editor NEW[DEPRECATED] Global GDG Event Directory
Home Page: https://gdg.events
License: Apache License 2.0
[DEPRECATED] Global GDG Event Directory
Home Page: https://gdg.events
License: Apache License 2.0
Handle urls as follows:
/:hash -> redirect to /event/:eventId
/:tag -> redirect to /:tag/events
on https://github.com/gdg-x firefly should look better than this:
Desc
Before working on some of the open issues, we should first update the project dependencies to their latest versions
It should look like this
[{
"relation": ["delegate_permission/common.handle_all_urls"],
"target": {
"namespace": "android_app",
"package_name": "com.example",
"sha256_cert_fingerprints":
["14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5"]
}
}]
More info can be found here.
http://developer.android.com/training/app-links/index.html
Instead of DevFest.
This can make the app hard to use and cause the user to get stuck in the map on some resolutions. It's bad UX that we should be able to fix fairly easily.
Location is not asked anymore. This is because insecure origins are blocked now in Chrome stable.
There should be shown a list of valid tags with the number of upcoming events.
Should be DevFest "Events near you" instead of "Event near you".
There is a TODO in https://github.com/gdg-x/firefly/blob/master/client/app/main/main.html
npm WARN deprecated [email protected]: use serve-favicon module
npm WARN deprecated [email protected]: the module is now available as 'css-select'
npm WARN deprecated [email protected]: the module is now available as 'css-what'
As suggested by Oleh
https://github.com/FezVrasta/bootstrap-material-design
GIVEN I visit http://gdg.events
WHEN I land on the homepage
THEN I want to be redirected to a certain category (e.g. "studyjam")
AND see the url updated in the address bar
Additional requirements
The list of tags should be already available as this is an element on each site:
https://travis-ci.org/gdg-x/firefly/builds/109027218
Missing error handler on `socket`.
TypeError: undefined is not a function
at disconnectBrowsers (/home/travis/build/gdg-x/firefly/node_modules/karma/lib/server.js:314:13)
at [object Object].<anonymous> (/home/travis/build/gdg-x/firefly/node_modules/karma/lib/server.js:291:7)
at [object Object].emit (events.js:129:20)
at emitRunCompleteIfAllBrowsersDone (/home/travis/build/gdg-x/firefly/node_modules/karma/lib/server.js:256:12)
at [object Object].<anonymous> (/home/travis/build/gdg-x/firefly/node_modules/karma/lib/server.js:278:9)
at [object Object].emit (events.js:129:20)
at [object Object].onComplete (/home/travis/build/gdg-x/firefly/node_modules/karma/lib/browser.js:142:13)
Supposedly new ClipboardEvent('copy')
works on Firefox, but it does not work on Chrome 40ish+.
Details here.
TypeError: Illegal constructor
at TypeError (native)
at Scope.scope.copyUrl (http://localhost:9000/components/footer/footer.directive.js:19:22)
at fn (eval at <anonymous> (http://localhost:9000/bower_components/angular/angular.js:1:0), <anonymous>:4:316)
at callback (http://localhost:9000/bower_components/angular/angular.js:23298:17)
at Scope.$eval (http://localhost:9000/bower_components/angular/angular.js:15846:28)
at Scope.$apply (http://localhost:9000/bower_components/angular/angular.js:15945:23)
at HTMLButtonElement.<anonymous> (http://localhost:9000/bower_components/angular/angular.js:23303:23)
at HTMLButtonElement.jQuery.event.dispatch (http://localhost:9000/bower_components/jquery/dist/jquery.js:4435:9)
at HTMLButtonElement.elemData.handle (http://localhost:9000/bower_components/jquery/dist/jquery.js:4121:28)
Currently it is UX-XXXX.
the content of the marker is defined in https://github.com/gdg-x/firefly/blob/master/client/app/event-map/event-map.html and should be extended by a link to something like https://gdg.events/5630461960257536-5629499534213120, i.e. chapter id and event id
the event-map is defined in https://github.com/gdg-x/firefly/blob/master/client/app/event-map/event-map.directive.js
The marker model needs to be extended by the chapter id
In PR #36 @tasomaniac mentioned that I/O Extended had a custom color theme in the Frisbee app.
Previously Firefly had some custom color theming for some of the different events like WTM and Android (while most event types did not have custom colors). During the initial version of the angular-material implementation, this custom coloring was removed from Firefly.
This isn't too hard to do with angular-material's theming system, but there are some details that need to be worked out around how the dynamic site URL + dynamic theming can work together.
Another issue is that the boomerang + GDG Events image in the toolbar is black. Ideally the boomerang would be an SVG and the 'GDG Events' portion would be text. This would allow angular-material to change the color of the text (between black and white) to work with the color of the toolbar automatically.
handle urls
/:tag -> redirect to /:tag/events
/chapter/:chapterId -> redirect to /chapter/:chapterId/events
We should update to the latest so that we can start using .component
.
Firefly was conceived to filter events using sub-domains and this is great.
The issue is that every time the user changes the filtering, the app asks again for permission to access the computer's location. This is annoying.
I will search for a solution. In the meanwhile, anyone would have the information if the issue is related to something imposed by Chrome the HTML5 GeoLocation API Specification or if it could be related to how the code was implemented?
Cheers. :)
In the footer there is an About and a toTop link. The url shortner catches these.
About should point to github.
toTop should scroll to the top
Uncaught TypeError: click is not a function
Ideally, use different favicon for different tagged event series, and for event page
I'd like to look into removing all of the Firefly server-side code.
I don't believe that the UrlShortener feature is used and I know that Analytics is not used.
I'd like to rip out all of the Node.js code and convert Firefly to a Single Page Application that is hosted on something like Firebase Hosting.
Any future server-side needs will be handled by the Hub.
This would greatly simplify maintenance of the app and a number of open issues related to Firefly like:
It would also save money as we wouldn't need a VM anymore and Firebase Hosting would be free.
This should help focus the efforts on Firefly on things that users actually care about. Most of my time on this project in the last 6 months has been DevOps and infrastructure that has no real user value and is not something that I enjoy doing.
Does anyone see any major issues with this?
Ray Tsang with GCP was concerned about why the Cloud tag wasn't showing up in the most popular tags list and how he could get it added. Currently the reason is just that other tags are more popular and are pushing it out of the top 10.
We should add the ability to see all active tags (might require Hub changes) or have a 'Featured' set of tags which we could make sure show up in a separate list.
(node) sys is deprecated. Use util instead.
connect-mongo
geoip-native
grunt-google-cdn
grunt-node-inspector
grunt-nodemon
grunt-protractor
karma-phantomjs-launch
Are all using the deprecated require('sys')
instead of require('util')
.
For some event tags, like study jam, it makes sense to list all events, instead of only the GDG events.
As you can see below, the text
attribute is clearly defined. I'm not sure how this broke, but it needs to be investigated.
Error: The `text` attribute is required.
at link (http://gdgroups.org/app/385f5d25.vendor.js:29:16968)
at http://gdgroups.org/app/385f5d25.vendor.js:4:25550
at ea (http://gdgroups.org/app/385f5d25.vendor.js:4:25607)
at q (http://gdgroups.org/app/385f5d25.vendor.js:4:19590)
at h (http://gdgroups.org/app/385f5d25.vendor.js:4:15699)
at q (http://gdgroups.org/app/385f5d25.vendor.js:4:19539)
at h (http://gdgroups.org/app/385f5d25.vendor.js:4:15699)
at h (http://gdgroups.org/app/385f5d25.vendor.js:4:15722)
at q (http://gdgroups.org/app/385f5d25.vendor.js:4:19539)
at h (http://gdgroups.org/app/385f5d25.vendor.js:4:15699) <qr input-mode="'8bit'" size="150" text="gdgeventsshorturl" image="true" class="pull-right ng-isolate-scope">
This is extremely annoying on Chrome for Android (stable). I try to scroll to Europe or Africa to see DevFest events, but the map keeps jumping me back to my current location. This does not happen on desktop.
When sharing via G+ or so devfest.gdg.events should show the icon of the tagged event series. Similar for event pages, they should contain relevant meta data.
Some tiles aren't loading properly and the console of Firefox 32.0.3 has the following:
"Error: a is null
b.distanceFromHere/e@http://android.gdg.events/app/1f7ce662.app.js:1:2239
b.distanceFromHere@http://android.gdg.events/app/1f7ce662.app.js:1:2500
$c/</c</<@http://android.gdg.events/app/b9d0ba27.vendor.js:6:9528
f@http://android.gdg.events/app/b9d0ba27.vendor.js:6:8988
$c/<@http://android.gdg.events/app/b9d0ba27.vendor.js:6:9599
qe.prototype.filter/d@http://android.gdg.events/app/b9d0ba27.vendor.js:6:31716
ne["|"]@http://android.gdg.events/app/b9d0ba27.vendor.js:6:25795
qe.prototype.binaryFn/<@http://android.gdg.events/app/b9d0ba27.vendor.js:6:31118
ne["|"]@http://android.gdg.events/app/b9d0ba27.vendor.js:6:25795
qe.prototype.binaryFn/<@http://android.gdg.events/app/b9d0ba27.vendor.js:6:31118
c@http://android.gdg.events/app/b9d0ba27.vendor.js:5:27335
Bc/this.$get</k.prototype.$digest@http://android.gdg.events/app/b9d0ba27.vendor.js:5:28355
Bc/this.$get</k.prototype.$apply@http://android.gdg.events/app/b9d0ba27.vendor.js:5:30059
i@http://android.gdg.events/app/b9d0ba27.vendor.js:5:8761
r@http://android.gdg.events/app/b9d0ba27.vendor.js:5:11182
_b/</v<@http://android.gdg.events/app/b9d0ba27.vendor.js:5:11454
g/g@http://android.gdg.events/app/b9d0ba27.vendor.js:5:10778"
There is a TODO in https://github.com/gdg-x/firefly/blob/master/client/app/main/main.html
On the readme file, at the command steps to run the project, the 3rd command is "monogd".
Shouldn't it be "mongod"?
This is the last step blocking the final move from GCE to GKE for Firefly. Once this is done, the Hub should be able to be migrated without much additional effort.
Currently, the GKE cluster must be created on a new GCP network (currently named default
) instead of the legacy gdg-x
network. We could migrate the gdg-x
network to the new GCP network, but it would take some considerable effort if there is a problem (possibly 10-20 hours).
That said, there is no proof that the GCP networks or firewalls are the problem. Even with the firewall wide open, the container still wasn't able to contact our MongoDB cluster. This seems to indicate that it is some configuration of the container (Docker) or system (Kubernetes) that is the problem.
I'm still learning Kubernetes and most guides seem to assume that you deploy this kind of solution using Docker Compose and linking containers. But our MongoDB isn't running in a container, so that doesn't work.
I read through a lot of articles talking about how to get this working with docker-machine and boot2docker on OS X. I was able to get it working after 5ish hours. But I wasn't able to get the same kind of functionality to work in Kubernetes in production after another 6ish hours.
For now, this will have to go on the back burner as I don't have anymore time to wrap this up (unfortunately) until June or so.
Firefly site is currently down and out of action.
This domain will likely be returned to the pool of publically available addresses on 9/11/2015.
There should be nothing. Something to do with the environment?
The android app frisbee allows to share the app through dynamic links (deferred deep links) using gdg.events domain. The site should show a page about frisbee for url the invite url.
For dynamic links of an event the event page is used.
Use the same home chapter as it is defined in frisbee and show the appropriate events
getCurrentPosition() and watchPosition() are deprecated on insecure origins, and support will be removed in the future. You should consider switching your application to a secure origin, such as HTTPS. See https://goo.gl/rStTGz for more details.
The above change will break Firefly once it goes live in browsers.
Unfortunately, we cannot get a free wildcard SSL certificate for Firefly as an open-source project since they only give single subdomain certs and not wildcard certs. This means we would need to pay for a more expensive wildcard cert or change the way that Firefly is built to no longer us subdomain prefixes.
The map on the DevFest Event Website is empty. I tried with different devices on diffent days.
Each event in firefly has an Analytics page.
So http://gdgroups.org/4685081094914048 would have analytics for organizers at http://gdgroups.org/4685081094914048/analytics
Unfortunately, this page is not working atm as it seems to create some kind of endless loop. This endless loop seems to also be sending endless requests to the Firefly server... not good.
It also needs to be updated with Material Design.
I need the information to be able to deploy and manage this project. I have been trying to get it for a couple months now without luck.
I will look into deploying this to another location in the GDG-x Cloud this weekend if this information is not available. We need to associate another domain with this site since we lost gdg.events
. See #40 for more details.
Currently the project does not 'just work' when cloning and following the README steps.
It appears that there are some steps needed to configure the server via /server/config/local.env.js
where it needs a SESSION_SECRET
to be defined.
What about on the client side? Is there somewhere that I need to put the API key as well?
Looks like the key is hardcoded into each client request, doh! That needs to be pulled out into a service.
This should show a list of events for the selected city. The map should be centered around the city.
There should be only one list with the upcoming events.
The description should be taken from the g+ page.
This is some functionality from boomerang, maybe refactoring?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.