OpenUserJS / OpenUserJS.org

The home of FOSS user scripts.
https://openuserjs.org/
GNU General Public License v3.0
847 stars 301 forks source link

UI: Vocab & Bootstrap? #103

Closed Zren closed 10 years ago

Zren commented 10 years ago

Edit:

Currently redoing the UI with Bootstrap & FontAwesome & whatever is needed.

Demo: http://nameless-hollows-5487.herokuapp.com

Progress

Discussion Category


Original Post:

Seeing as most users are probably coming from Userscript.org, I'm wondering why you changed some of the vocabulary.

Looking at the UI made me want to redo the entire thing. When checking out the tracker I also saw #77, and thought if you're going to implement it for a 3rd parties, you might as well use it for the site as well. This made me think of http://datatables.net/. I noticed that NodeJS + Mongoose has a package for it on the server side https://www.npmjs.org/package/mongoose-datatable. Now I haven't checked into SEO with DataTables, so I'll have to look further into it. Anyways, I made a quick demo with it and Bootstrap 3.

http://codepen.io/Shadeness/pen/zBomq

I also tried cloning Userscript.orgs frontpage (without DataTables this time).

http://codepen.io/Shadeness/pen/LmyFB

Essentially, I wanted to point out that Bootstrap + FontAwesome would help make the site look less like it came from the 90s and more like it's a copy-paste site from the 2010.

jerone commented 10 years ago

+1 on all your points.

I know that some of the naming have reference to Greasemonkey.

I would also suggest changing the naming of "Issues" for scripts to "Discussions". This sounds more positive & would also allow discussions on that script besides issues.

http://codepen.io/Shadeness/pen/LmyFB

Really liking your second example!

I'm no designer, but haven't really found the time and effort to list all HCI issues with this design. We also need to know that this is still work in progress!

moshmage commented 10 years ago

TBH: I don't like the design Userscripts had. It was lacking information and at the end of it all it just felt like someone droped a Word table on it and moved on with it.

I agree, thought, that the website feels like it came from the 90's [it made me feel a mix of feelings, but I also got the same urge as you did to redo the thing] but after some time looking at it I now think that instead of a "redo" of the whole thing the, the thing that it really needs is some minor adjustments to paddings, margins and the likes (and "maybe" a change in font).

I do agree with you on the Icon bar; Had I read the issues list before I'd have put #104 in here instead.

I don't agree with your view on the naming of the section and kind'a like the humor behind it (LOL @ The Beggars Corner), but that's just personal and wouldn't really matter if it changes. Though the thing about "groups" vs "tags" ... meh. I got more annoyed at the fact that one script can't have two groups than the wording of said thing.

Plus, we have to remind ourselves that the website is months old, if that much, so let'em deal with the backend first so we (i'm assuming you're a frontend dude aswell) can shine'it afterwards ;)

Martii commented 10 years ago

I got more annoyed at the fact that one script can't have two groups than the wording of said thing.

Give it some time. I'd like to see more than one group as well per script but we need more moderation tools available first.

remind ourselves that the website is months old

Yes. Improvements will come at a speedier rate eventually.

sizzlemctwizzle commented 10 years ago

@Zren

Tags => Groups

I hate tags. Script groups have different behavior.

Forums => Garage (Ehhh...)

There are no forums (seriously I have a future feature up my sleeve that would make the use of "forum" term incorrect, which is why I use the generic "discussion"). The Garage is just a discussion category.

Pagination only shows the current page with directional buttons.

Completely intentional. I don't see the point of having a long list of page numbers.

Giant menu icons.

Yup. I'd like to shrink them.

This made me think of http://datatables.net/.

Looks nice. I'll give it some thought.

@jerone

I would also suggest changing the naming of "Issues" for scripts to "Discussions".

-1 I really don't want to do that. It's an issue tracker (you can open and close them, and eventually I'll add labels), so I'd be strange to give it a generic name.

@moshmage

I got more annoyed at the fact that one script can't have two groups than the wording of said thing.

Incorrect, although I need to add text letting people know how this feature works. You can only create one group for a script. You can add your script to as many existing groups as you desire. This is why I chose the name "group" and not "tag". I'm trying to prevent people from creating many unnecessary and redundant groups. Basically choose the groups you create carefully, because you have a limit. So yes, this is intentional behavior and not a limitation of the implementation (in fact I had to do a lot of work to accomplish this).

Zren commented 10 years ago

@sizzlemctwizzle

There are no forums (seriously I have a future feature up my sleeve that would make the use of "forum" term incorrect, which is why I use the generic "discussion"). The Garage is just a discussion category.

Garage isn't a synonym of discussion, the only way a new user would know it was for discussion was if they randomly clicked it. It would be fine if you were already at the "Forums" index, and the "Garage" was a subforum, but this is a nav link in the header of every page on the site.

@moshmage

I don't agree with your view on the naming of the section and kind'a like the humor behind it (LOL @ The Beggars Corner), but that's just personal and wouldn't really matter if it changes. Though the thing about "groups" vs "tags" ... meh. I got more annoyed at the fact that one script can't have two groups than the wording of said thing.

I didn't know you couldn't add multiple "groups". Group is probably the better term atm then.

Zren commented 10 years ago

I just noticed there's a general discussion here: https://openuserjs.org/discuss which would probably be a better main nav link.


I also started implementing this UI here: https://github.com/Zren/OpenUserJS.org/tree/ui

I've done the Script List Page and the Script About Page.

You can view it using this live demo on heroku. It's using the default dev db (I'll try to clone it if that's not ok).

Here's some screenshots if it crashes: https://github.com/Zren/OpenUserJS.org/wiki/Screenshots

I had to change the pagination/sort/search technique to use the query string. Well I didn't have to, but you shouldn't be storing optional variables like that in the route/path anyways. I'll be adding another flag variable to the query string filtering libraries later (which is why they aren't filtered out at the moment).

Some things I found out while coding this so far: We really need an id/slug field in the Script schema. Getting which script a route belongs to is cumbersome (having to generate the script.installUrl before querying the db). And generating urls is painful as well.

sizzlemctwizzle commented 10 years ago

@Zren

Garage isn't a synonym of discussion

Yeah I realized awhile ago that I need a better name, but we already had the icon for it by then so I was stuck.

It would be fine if you were already at the "Forums" index, and the "Garage" was a subforum, but this is a nav link in the header of every page on the site.

I'm against using "Forums" but I do want to rename that discussion category to something that implies discussing user script development. "Forum" won't work because of the feature I mentioned earlier. Since Greasy Fork already has a forum and seems committed to it, I guess I can divulge my idea. Basically discussions are currently comment-based (there's a topic), but what I'm going to do is that when two or more registered users are on a discussion page at the same time it will transform into a chatroom (hence "discussion" covers both comment and chat-based communication). When the number of users on that page drops below two, it'll revert to comment-based communication and the chat history will be preserved on the page (probably as a scrolling comment box). I hope I explained my idea well enough. If you want me clarify, please don't hesitate to ask.

I just noticed there's a general discussion here: https://openuserjs.org/discuss which would probably be a better main nav link.

I didn't link to the general discussion area because I want to discourage off-topic discussion on the site.

It's using the default dev db (I'll try to clone it if that's not ok).

I'd prefer if the dev db isn't used for anything world-facing.

but you shouldn't be storing optional variables like that in the route/path anyways.

Yeah, moving the pagination/sort/search access to the query string is probably better. I guess I just really love using routes and got a little route-crazy.

We really need an id/slug field in the Script schema.

It already does (script._id), but it is only used internally.

Getting which script a route belongs to is cumbersome (having to generate the script.installUrl before querying the db). And generating urls is painful as well.

I prefer using this because of its benefits (we can identify a script based on its contents: @name and @namespace) even if it is more cumbersome than generating a meaningless id. I don't find it painful since there are functions that help do this work for you. It never bothered me. Also it allows us to have meaningful urls, and even if we switched we'd have to keep this, so we'd just be making this more complex not simpler. I might be willing to use a hash of username, @name, and @namespace (if it's present) in places where we don't need a readable url.

As for your demo, nice work. I do like the changes overall but it still looks a bit bare and boring. Can we at least get some icons in there? It appears that the login/register is unimplemented. What were you planning on doing with that? I'd like to keep the one-input login myself, but I don't know how that would fit with the redesign. And we decided long ago to use blue and grey for the color scheme. Also, I'm going to reiterate: they're not tags, they're groups. From your previous comment it appears you agree, but you use "Tags" in your demo.

Anyway, I'd really appreciate some opinions on the site design from others. I don't enjoy making all the decisions alone. @OpenUserJs/admin @OpenUserJs/backend @OpenUserJs/frontend

Zren commented 10 years ago

I'd prefer if the dev db isn't used for anything world-facing

I'll get on that then.

they're not tags, they're groups.

Where didn't I change i- oh in the "tag cloud". Sorry.

we decided long ago to use blue and grey for the color scheme

Ah. I just grabbed a theme off http://bootswatch.com/ that looked most like US.org. Was going to change the colour scheme after doing all the layouts anyways. Good to know.

get some icons in there

You want more icons? Hehehehehehe. http://fontawesome.io/icons/ Basically anything off that can be used. I'll try not to make it overkill.

Re: ids/slugs

You have 3-4 piece of data right now to act as a primary key.

scriptType (scripts/libs) + scriptAuthor + scriptNamespaceSlug (optional?) +  scriptNameSlug

The fact that we're duplicating and accepting routes without the scriptNamespaceSlug tells you it's pointless and you should remove it as script namespaces are ugly sluggified urls and bloat up the whole url. You don't even need it unless a user has two scripts with the same name scriptNameSlug. And in most cases, the namespace will be the same for all the user's scripts, making it redundant.

Same with scriptType, it's unnecessary without needing to distinguish two scripts by the same user with the same slug.

So you really only need: userName and scriptNameSlug.

sizzlemctwizzle commented 10 years ago

Ah. I just grabbed a theme off http://bootswatch.com/ that looked most like US.org.

I see. Personally, I like this one: http://bootswatch.com/superhero/ I always advocated a darker background, but other people disagreed. But then again, I don't pretend to know much (if anything) about UI.

So you really only need: userName and scriptNameSlug.

That makes sense to me. Until people started using the site I didn't realize that the namespace portion turned out to be a hot mess with no real meaning. I'm for getting rid of it (although it'll require a fair amount of work since it's used to store scripts in S3 as well). I kind of like dividing user script and library routes (I like including the information in the url), but I'll admit the code would be a lot simpler and cleaner if it was eliminated.

Martii commented 10 years ago

I'd really appreciate some opinions on the site design from others

I assume you mean publicly. I'm still getting the feel (including logical layout which in some circles is better than the other sites :) of the site so I can dig into the source a little deeper. If you haven't noticed most of my scripts and even GM is improving upon existing structures. Some of the technologies used I have never heard of before but luckily I'm usually a quick learner and appreciate every linkage. The site could use a little improvement with CSS on cell phones to maintain consistency across pages, on desktops the font scaling is really unusual with the percentage size... some of my lists are bigger than others and the markdown syntax is identical minus content, and of course my announced issues with some of the plumbing. As far as recommendations of certain technologies I usually write things from scratch when it comes to web design. Reinventing the wheel I suppose. I'm moving as fast as I can to catch up... money and other duties are also a factor for me right now. :) I can help you make some of the decisions but only within my current expertise. Just remember not to get overwhelmed... sometimes that is easy to do especially under the current crunch on USO.

EDIT: You might consider weekly or monthly "get togethers" like Moz does to help ease the decision making processes and not try to have everyone do it in one shot... and a well established release schedule with the exception of emergency releases and of course some delays.

jerone commented 10 years ago

I also started implementing this UI here: https://github.com/Zren/OpenUserJS.org/tree/ui

I've done the Script List Page and the Script About Page.

You can view it using this live demo on heroku.

Just some fast feedback...

I love this new design. It looks more modern and professional. A lot of sites use this kind of design, which is intuitive and easy to look at. Now it also shows more information, which requires less scrolling. The current design, to my taste, is a bit out-dated and childish, I do however like the font.

I do agree that it misses some icons. Specially at the header, but this could be fixed by adding a logo. Another suggestion is to show the script's @icon in the listing when available (and default image when not).

The color might be a bit to related to USO and I would like to see it in the agreed upon (where?) blue and grey color scheme.

The detail page is a little crowded to my taste. It's not clear that the 3 links (About, Source Code, Issues) are part of a tabbar. I would move the information below the script name (e.g. By jerone — Last updated 3 months ago — Installed 0 times.) also on the right side. That would make room for more information from the script (like @license, etc). Above suggestion distinguish the custom script description more from the standard site layout. Always add an submit button after a search field.

sizzlemctwizzle commented 10 years ago

@Zren I intend to use your proposed design. Do you need some help from me to adapt it to the entire site, or is that something you've got handled? I ask because I see you've been doing a lot of work on your branch and I don't want to get in your way. If you need anything from me, just ask.

Zren commented 10 years ago

I renamed my ui branch to dev as it was starting to get full of other thing. I remade the ui with code for an eventual PR.

I wrote a script to grab ~600 scripts from userscript.org to populate my local db.

I did the ScriptEditMetadataPage the other day. Added :username onto the route to stay consistent with the routes (yes we can pull the username from the session user).

image

I added a helper function called app_route for routing which can be seen here, It works similar to Express v4. Eg: app_route('/').VERB(callback).VERB(callback);.

I also found out you can use: ? like so :varname? in routes to declare an optional route param. This should cleanup a bunch of duplicate route definitions. However /script/:username?/:namespace?/:scriptname/edit does NOT match /script/scriptNamespaceSlug/scriptNameSlug. Found out the hard way.

Edit: Moved checklist to OP.

@sizzlemctwizzle Could you implement the ScriptEditScourcePage and ScriptViewSourcePage? I haven't setup the fake AWS script yet, so that'd be helpful.

Zren commented 10 years ago

Moved the checklist to the OP.

I finished the UserProfile + UserEditPage today (I broke each up into 2 pages).

image

sizzlemctwizzle commented 10 years ago

Good work Zren. Look great!

Could you implement the ScriptEditScourcePage and ScriptViewSourcePage?

Yeah, I'll get on that but I'm certain that it won't look too pretty. JS & HTML are my thing. I don't really know what I'm doing with CSS (and I know the editor requires some).

Zren commented 10 years ago

http://nameless-hollows-5487.herokuapp.com/groups http://nameless-hollows-5487.herokuapp.com/group/youtube http://nameless-hollows-5487.herokuapp.com/discuss http://nameless-hollows-5487.herokuapp.com/discuss/Test

Today's progress.

sizzlemctwizzle commented 10 years ago

@Zren

Brilliant work! Love what you've done with discussions. I can tell you're going for a "US.o if it had been created in this century" feel. Keep up the great work. You're kicking ass and taking names.

Edit: I'm still trying to figure out your new layout for the templates so I can implement those two pages.

Zren commented 10 years ago

Thanks. I styled the discussions after http://try.discourse.org/


Here's a template page to get you started.

For the controller, here's an example.


And why not, one more:
http://nameless-hollows-5487.herokuapp.com/register

Yes I know you can't login on my herokuapp (it's due to the oauth callbacks not allowing the host). The login works though on localhost.

sizzlemctwizzle commented 10 years ago

If that's the template, is there any way we can abstract that code away (I'm think mostly of the controller) so we don't have to repeat ourselves?

The login/register looks nice. How about a modal popup? Like normally login shows, but when you click register it switches.

Zren commented 10 years ago

The top one is bare bones as it's just defining stuff and metadata changes on each page. The second one could probably have the pagination abstracted. The sort/search could as well probably, though we need to keep the query = Model.find() visible in the controller.

sizzlemctwizzle commented 10 years ago

The second one could probably have the pagination abstracted. The sort/search could as well probably

Couldn't you adapt the modelsList library (specifically the listModels function) to do this? Is there a reason you decided to stop using it, rather than extending/improving it? Or did you just adapt/replace it somewhere else that I'm not seeing?

Zren commented 10 years ago

Couldn't you adapt the modelsList library (specifically the listModels function) to do this? Is there a reason you decided to stop using it, rather than extending/improving it?

Keep legacy code working without breaking everything at once, and modelList is designed around route params. I opted to break up parsing the individual objects into modelParser as well.

sizzlemctwizzle commented 10 years ago

and modelList is designed around route params.

Actually, you can pass it an object as well, although that was never really used anywhere so it might not work too great.

I opted to break up parsing the individual objects into modelParser as well.

Ah, I see. That makes sense and looks better. Even while I wrote the code, I knew the structure of my modules where haphazard (see #72). I'm glad someone can bring some order.

Zren commented 10 years ago

Did a little refactoring. I simplified pagination a bit, and removed the need to define which model we're using in modelQuery.parseModelListSort as we can grab the model from query.model.

Eg: https://github.com/Zren/OpenUserJS.org/compare/5d1dbcacb60d9e8f8bf9d6e27fa4f7f114cd0bb2...42d42da#diff-9ded95676cd9a25c6466192ba063401aR20

Going to redo Issues next.

Dexmaster commented 10 years ago

"Internal Server Error" Just saying ...

On 28 May 2014 02:23, Chris Holland notifications@github.com wrote:

Did a little refactoring. I simplified pagination a bit, and removed the need to define which model we're using in modelQuery.parseModelListSortas we can grab the model from query.model.

Eg: Zren@5d1dbca...5b4aa8f#diff-9ded95676cd9a25c6466192ba063401aR20https://github.com/Zren/OpenUserJS.org/compare/5d1dbcacb60d9e8f8bf9d6e27fa4f7f114cd0bb2...5b4aa8f5dbb957365ae36208868001345e0bdb1e#diff-9ded95676cd9a25c6466192ba063401aR20

Going to redo Issues next.

— Reply to this email directly or view it on GitHubhttps://github.com/OpenUserJs/OpenUserJS.org/issues/103#issuecomment-44348072 .

Best Regards, Andrii M.

mob. tel: +38 097 583 58 35 e-mail: dexteritymaster@gmail.com skype: Dexmaster

sizzlemctwizzle commented 10 years ago

@Dexmaster #112

Zren commented 10 years ago
Zren commented 10 years ago

Oh wow. Installing ruby and fakes3 was simplier than I thought it'd be.

@sizzlemctwizzle You deciphered enough of my code to start either of those pages?

sizzlemctwizzle commented 10 years ago

Yeah, I'm most of the way done. But where'd you put the jQuery? I know it has be somewhere since you still use it with Select2 on the user script meta page.

Zren commented 10 years ago

I put all javascript libraries in the footer includes/footer.html. Any per page js can be placed after it.

https://developer.yahoo.com/performance/rules.html#js_bottom

sizzlemctwizzle commented 10 years ago

Well I finished the view/edit source page: ec278a9cdcd5d7891e223917832c22d1276c9fae I elected to keep them as the same page since they only have a minor difference. I did separate the the script source editor controller from the controller used to do the actual submission. I'm not sure how to style the submit button.

/admin/users is moved to the actual user page.

Then we need a page that lists users and supports searching.

Zren commented 10 years ago

I'm not sure how to style the submit button.

I'll merge it and test it in a bit (now that I can actually see scripts now :D).

Zren commented 10 years ago

UserListPage has name, roleName, and ghUsername (why not eh?), I might add scriptCount too, but that would add limit (max: 100) number of requests, per page (I think?).


@jerone I added the @icon. The docs for it suggest a 32x32 picture, when we only need a 16x16 (some even use a much bigger picture). So we might need to disable it (or do some checking) in the future. Probably going to make the default icon to be a grayish, to stand out less.

Also added a search button with a search icon to the search bars (as you can see in the first screenshot).

sizzlemctwizzle commented 10 years ago

No need to put script count on that page. User role should be good enough since "Script Author" will let know they've published scripts and we can check out their profile if we want to know more.

However, I'm unsure about publishing their GitHub username. That was originally designed for internal use only. It's one of the reasons we hash the user ID we get from other forms of authentication. If you signed up with Facebook, you might not want a link to your profile displayed to the world without consent.

Zren commented 10 years ago

I would move the information below the script name (e.g. By jerone — Last updated 3 months ago — Installed 0 times.) also on the right side. That would make room for more information from the script (like @license, etc).

Github style?

Edit: Just realized that some script names are really, really long. Doesn't look as awesome when it wraps the line.

jerone commented 10 years ago

Edit: Just realized that some script names are really, really long. Doesn't look as awesome when it wraps the line.

You could place the "Install" button on the right side in the menu...

Looking great with each update!

Zren commented 10 years ago

NewScriptPage

I've probably broken the import from github / script sync page by moving it. Going to have to test it... somehow.

Martii commented 10 years ago

@Zren

From the url under "Edit Meta" under "Author Tools" it looks like OUJS. This might be confusing to noobies. Perhaps "Edit Site Meta" and perhaps "Edit User Script"? Btw Gorgeous so far!! :)

Just realized that some script names are really, really long. Doesn't look as awesome when it wraps the line.

My 2 cents... looks great css fluidity wise!


@jerone

You could place the "Install" button on the right side in the menu...

That will probably cause issues when the viewport is small. The current #content-navbar gets hidden with those with a menu drop-down.

sizzlemctwizzle commented 10 years ago

@Martii @Zren

From the url under "Edit Meta" under "Author Tools" it looks like OUJS. This might be confusing to noobies. Perhaps "Edit Site Meta" and perhaps "Edit User Script"? Btw Gorgeous so far!! :)

Perhaps "Edit Details"? Both "Edit Meta" and "Edit User Script" sound like they might apply to the script source.

Zren commented 10 years ago

That will probably cause issues when the viewport is small. The current #content-navbar gets hidden with those with a menu drop-down.

That just means you need two buttons that show/hide when that happens. http://getbootstrap.com/css/#responsive-utilities

From the url under "Edit Meta" under "Author Tools" it looks like OUJS. This might be confusing to noobies. Perhaps "Edit Site Meta" and perhaps "Edit User Script"? Btw Gorgeous so far!! :)

T'was origionally gonna be Edit Description, till I noticed the page edited the groups as well. Though now that I think on it, groups describe the script as well.

cletusc commented 10 years ago

NewScriptPage

Looks sweet. Typo: in the script details section, the two links in author and collaborator for "Collaberation" should be "Collaboration".

Zren commented 10 years ago

Typo

God damn it.


I accidentally had to use git push origin ui -f (fast forward push which breaks git pull if you're up to date on the branch). Undo commit (aka git reset --soft HEAD^1) is very dangerous. Don't be an idiot and accidentally do it twice, undoing a pushed commit. Then be lazy and not re pulling to redo the new commit, and instead combine the 2 commits like me.


Used "Edit Script Info" as GreasyFork uses the terminology "Additional info".


Zren commented 10 years ago

Started on the theme. Gray/Blue w/ Orange links. Most of the pages need to be added to a white bg panel as I added a gutter bg color.

http://nameless-hollows-5487.herokuapp.com/scripts/zren/httpxshade.ca/Resize_YT_To_Window_Size

Desktop

Phones

sizzlemctwizzle commented 10 years ago

Looks sexy. But I got a server error from the demo. On Jun 3, 2014 8:21 PM, "Chris Holland" notifications@github.com wrote:

Started on the theme.

http://nameless-hollows-5487.herokuapp.com/scripts/zren/httpxshade.ca/Resize_YT_To_Window_Size

  • Github styled heading + install counter in the nav. Version & updated timestamp moved to the metadata area. Seperated the metadata from the script info.

Desktop

https://camo.githubusercontent.com/d5f29855d24785c4a2ef5cc5c55cd824e1ef3368/687474703a2f2f692e696d6775722e636f6d2f505143525a634c2e706e67

Phones

https://camo.githubusercontent.com/93aab2fa310809191512b5d2046bf494d2742bd3/687474703a2f2f692e696d6775722e636f6d2f7531786d3468622e706e67

— Reply to this email directly or view it on GitHub https://github.com/OpenUserJs/OpenUserJS.org/issues/103#issuecomment-45042036 .

Zren commented 10 years ago

Bug in my date formatting code. Re upped the demo.

sizzlemctwizzle commented 10 years ago

How far are you from submitting a pull request? Is there anything I can do?

cletusc commented 10 years ago

Some suggestions that you may or may not want to implement:

Which can be done with this CSS (or if you prefer another way, that's fine too).

.script-version:before {
    content: "v";
}

and after (using 10px margin-bottom on the search form, but use ems if you want):

Other than that stuff, looks great! Can't wait for the PR to go through.

jerone commented 10 years ago

Phones

@Zren what are the requirements for mobile? Because it doesn't work on multiple mobile browsers I've tested the demo.

Zren commented 10 years ago

On headings, change the header link icon class from fa fa-paragraph to fa fa-link to have a similar icon to what GitHub has. Would turn it to this:

Done, and shrinked the icon to 66%.

what are the requirements for mobile? Because it doesn't work on multiple mobile browsers I've tested the demo.

Looks like I needed to add <meta name="viewport" content="width=device-width, initial-scale=1.0"> to get the phone view on high DPI devices.

How far are you from submitting a pull request? Is there anything I can do?

What's left is:

I've manage to get my own github client id/key so I can now login on the demo. I also port forwarded my localhost fasks3 for the herokuapp so it'll save scripts now. Which means I can actually tackle the github sync issue (hopefully). I'll try and see if I can finish it tonight, and get a PR ready.

I'll be adding the following optional Environment Variables btw:

cletusc commented 10 years ago

Looks like I needed to add...

Take a look at some of the practices in HTML5 Boilerplate--that's one of them. I've adapted quite a bit of it within my own personal projects, scrapping a few bits for Bootstrap and other things. In short, meta that is well recognized (mobile-first and so-on), 1-2 scripts in the head (modernizer), and all the other JS at the bottom as needed. :smile: