-
Notifications
You must be signed in to change notification settings - Fork 32
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Site refactor #52
Site refactor #52
Conversation
- Pull head and footer to partials - Use hugo builtin GA template - Add package.json. Subsequent PR will clean up StandardJS warnings.
- Removes rogue index.css link from common head.html patial. - Fix line endings in README.md. - Simplify .gitignore to only contain file types this project might generate.
@diasdavid this is mergable if you have a moment to review. I'm working on fixing up the JS so there are no standard errors next. |
- Use factor-bundle to create page specific bundles pull common deps into common.js
README.md
Outdated
|
||
## Implementations & Bundles | ||
|
||
JSON arrays to update implementation & bundle status can be found in `/static/js/data` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Documentation needs to be updated as in "how to update the JSON arrays and what are they containing"
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 the README will be fixed up to comply with the README spec, but I'll tackle that last once everything is in place.
README.md
Outdated
> hugo | ||
# .. | ||
|
||
> ipfs add -r public |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should also explain how to use the DNS simple publish script
@lgierth can we create a test account for tableflip? A simple account with a random domain will do, then all we need is to change the target and API token.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
My crappy dnslink script is here: https://github.com/ipfs/infrastructure/blob/master/scripts/dnslink.sh
It needs bash, curl, jq (all in homebrew), and you call it like this DNSIMPLE_TOKEN=<token> ./dnslink.sh <domain> <hash>
<div class="triangle grey"></div> | ||
</article> | ||
|
||
</main> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Only the main should be in body. Anything that is template/design should go into a partials/template folder.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I will be pulling much more into partials.
When building pages I find it most useful to be able to compose the page out of templates, rather than override things from a layout. A layout either ends up encoding some assumptions, that some pages may not want, or is so thin that it's hardly worth making the dev fit 2 files in there head to guess what the resulting page will be.
Good progress here! :) Since there is |
|
- Pull data into json and into hugo data folder. Next step, static build all the things. - Decompose common.js into named modules with a single purpose, to ease maintenance. - Fix process to create page specific and common JS bundles. - Add build:* and watch* scripts to package.json
I've update the PR description to show our progress. The list will grow as the points still to do become more clear as I fix things up, but it's a good start. I'm going to fold all my subsequent branches into this PR. |
Browserify
Pull the topbar into a partial
Data driven impls
- Port JS UI code to hugo partial bundle.html - Add coming soon section
Data driven bundles
Pull in contributors data at build time
@diasdavid I'll be working on the build / minify / deploy process and README updates tomorrow. PR is good for your eyeballs now though. |
Hey Tableflip! Here is my preliminary review as I test this new hawt 🔥 iteration on the website.
I've reviewed the website on a train and I've experienced how slow it is to fetch every single image on the contributors graph over a tethered connection Can you make the fetch of those images happen in build step + the crop (less space used), so that the users had to load less content. Still on the Contributors graph, the horizonal scroll is not working for me now. This got busted Tiny request: Can we have the implementations.json be one .json per table? It gets exhausting to have to scroll so much. Let's have anything related with the structure of the website, be inside the What's is the difference between the js inside |
This is it for now :) Once we get this merged, I'll update the implementations table. There are more implementations already :) |
@diasdavid excellent... I'm improving the build process at the moment, so I'll still be using the On the contributors implementation, it'd help me a lot if we could have a call about it. The spec'd change was to have it pull the data in at build time rather than in the browser, but then I couldn't resist simplifying the code once I was in there, but I recognise that I've gone off spec, so it'd be great to sync our expectations on what it should do. Some of it may ideas for the next sprint. In general though, I agree that it's too heavy for mobile clients on roaming data. I'll fix that busted image now! Pesky OSX and it's case-insensitive file system.
Yes, but that'll require a change to the rendering logic too so I'd suggest this is more like a good idea for the next sprint.
Good to chat about this one. Now there is a build step where we browserify the js into per page bundles and extract out all the common code into a |
Makefile build and deploy process
@diasdavid PR updated with fixes and a SUPER SHINY MAKEFILE ...based build and deploy process. The deploy is basically cribbed from other makefiles around the protocol universe, while the build step is a port of the npm run script version, and I think it's pretty rad. Take a look. Of note, I haven't tested the |
Fix publish-to-domain to use dnslink script
- Decrease minimum time between hexagons - Trigger contributor loading when the user is within 500px
Makefile
Outdated
--domain=$(DNSZONE) --record=$(DNSRECORD) --path=/ipfs/$(shell cat versions/current) | ||
publish-to-domain: auth.token versions/current | ||
DNSIMPLE_TOKEN=$(shell cat auth.token) \ | ||
./dnslink.sh $(DOMAIN) $(shell cat versions/current) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@lgierth will like this :D
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actually let's move the token file to something like $HOME/.protocol/dnsimple.token
-- just so it's never underneath the repo directory and there's no chance of ever accidentally committing it.
You can just assume that people put it there out-of-band (dnslink.sh will fail on its own).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@lgierth will move this as a separate issue and for a future sprint since last sprint ran out of time.
✨ 🎷 🐩 |
build:js
andwatch:js
scripts to package.json.Pull Logo animation in cssoff spec, and not a significant issue.This list may grow, but this is the story as best we know it right now.