{"id":16370838,"url":"https://github.com/integralist/html5-history-api","last_synced_at":"2026-03-08T22:30:17.356Z","repository":{"id":140161396,"uuid":"1907495","full_name":"Integralist/HTML5-History-API","owner":"Integralist","description":"Takes the pushState example from 'Dive into HTML5' and enhances it.","archived":false,"fork":false,"pushed_at":"2012-04-14T15:47:51.000Z","size":702,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-12-31T13:43:38.304Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Integralist.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2011-06-16T19:37:08.000Z","updated_at":"2020-07-31T08:14:21.000Z","dependencies_parsed_at":"2023-03-13T10:44:18.668Z","dependency_job_id":null,"html_url":"https://github.com/Integralist/HTML5-History-API","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Integralist%2FHTML5-History-API","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Integralist%2FHTML5-History-API/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Integralist%2FHTML5-History-API/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Integralist%2FHTML5-History-API/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Integralist","download_url":"https://codeload.github.com/Integralist/HTML5-History-API/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239906775,"owners_count":19716581,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-11T03:06:14.372Z","updated_at":"2026-03-08T22:30:17.325Z","avatar_url":"https://github.com/Integralist.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"[Integralist](http://www.integralist.co.uk/) - HTML5 History API\n================================\n\nDescription\n-----------\n\nThis is an 'extended/improved' version of the example found in the '[Dive into HTML5](http://diveintohtml5.org/history.html)' online book.\n\nIn the example the author demonstrates a photo gallery that links to different pages.\n\nEach page has the same content/layout, the only difference is the photo being displayed.\n\nMy issue with the example was that the home page had the full HTML layout/css but all other pages linked to only had the relevant section of the HTML for the gallery.\n\nI appreciate this made his example simpler to understand how the XMLHttpRequest was pulling in the fresh data and populating the current page, but I prefer a 'fuller' more realistic example where the HTML for all subsequent pages are also full pages and not just the HTML for the gallery/photo.\n\nFor example, in the original version, if you disabled JavaScript then yes the link to the other page would still be accessible, but the design of it would be plain black text on white background because those pages don't feature the full HTML/CSS. So without JavaScript the page wasn't a good enough user experience (in my opinion).\n\nMy example makes sure that if JavaScript is disabled then even the subsequent pages have a full design as per the initially loaded page (and means if a user is linked through from a search engine to a subsequent page that wasn't the home page - and they happen to have JavaScript disabled - then they would still see a fully 'designed' page!)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fintegralist%2Fhtml5-history-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fintegralist%2Fhtml5-history-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fintegralist%2Fhtml5-history-api/lists"}