{"id":37639454,"url":"https://github.com/franceme/franceme.github.io","last_synced_at":"2026-01-16T11:14:54.456Z","repository":{"id":112674364,"uuid":"202466467","full_name":"franceme/franceme.github.io","owner":"franceme","description":"My Personal Website","archived":false,"fork":false,"pushed_at":"2026-01-11T19:42:11.000Z","size":212856,"stargazers_count":0,"open_issues_count":7,"forks_count":1,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-01-11T20:28:46.378Z","etag":null,"topics":["flask","frozen","python","research","research-and-development","website","website-template"],"latest_commit_sha":null,"homepage":"https://franceme.github.io","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/franceme.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2019-08-15T03:19:28.000Z","updated_at":"2026-01-11T19:41:13.000Z","dependencies_parsed_at":"2025-06-12T13:33:53.879Z","dependency_job_id":"a940df80-069c-4f32-b752-2494270d3688","html_url":"https://github.com/franceme/franceme.github.io","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/franceme/franceme.github.io","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/franceme%2Ffranceme.github.io","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/franceme%2Ffranceme.github.io/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/franceme%2Ffranceme.github.io/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/franceme%2Ffranceme.github.io/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/franceme","download_url":"https://codeload.github.com/franceme/franceme.github.io/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/franceme%2Ffranceme.github.io/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28478164,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-16T06:30:42.265Z","status":"ssl_error","status_checked_at":"2026-01-16T06:30:16.248Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["flask","frozen","python","research","research-and-development","website","website-template"],"created_at":"2026-01-16T11:14:54.303Z","updated_at":"2026-01-16T11:14:54.444Z","avatar_url":"https://github.com/franceme.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Base Website\n\nHelpful Items\n\n1. The index.html page is the main and only webpage\n2. The setup.py provides any variables and methods used within the html webpage\n   1. index.html uses Jinja internally to process the website\n3.  Think of the process similar to compilation\n    1.  Index is the raw source code\n    2.  Python (setup.py) compiles the index.html webpage into the usable format\n    3.  Python (setup.py) returns the useable index.html, with all the information sent in as a live dynamic website\n\nHowever GitHub Actions and GitHub Pages only uses Static Pages.\nThe Python package [Frozen-Flask](https://github.com/Frozen-Flask/Frozen-Flask) is able to freeze the dynamic website to static webpages.\nEssentially the usable index.html file produced by Python (setup.py) gets frozen to a static website.\nMethods and variables are transferred from python to html listed below.\n\n\u003e Methods\n```python\ndef get_base():\n    .\n    .\n    .\n    return flask.render_template_string(f\"\"\"TA DA\"\"\")\n\napp.jinja_env.filters['get_base'] = get_base\n```\n\u003e Variables\n```python\n@app.route('/index.html')\ndef index():\n    .\n    .\n    .\n    return render_template_string(get_file(page),mimetype=\"text/html\",variable_one=\"variable_one\")\n```\nThere are a few cavietes that need to be handled:\n1. Redirects cannot be handled using regular flask methods since the dynamic page gets translated to a static webpage. However a static html that redirects is a working redirect that I use. The code is listed below.\n```html\n\u003c!DOCTYPE HTML\u003e\n\u003chtml lang=\"en-US\"\u003e\n    \u003chead\u003e\n        \u003cmeta charset=\"UTF-8\"\u003e\n        \u003cmeta http-equiv=\"refresh\" content=\"0; url={url}\"\u003e\n        \u003cscript type=\"text/javascript\"\u003e\n             window.location.href = \"{url}\"\n        \u003c/script\u003e\n        \u003ctitle\u003ePage Redirection\u003c/title\u003e\n    \u003c/head\u003e\n    \u003cbody\u003e\n        If you are not redirected automatically, follow this \u003ca href='{url}'\u003elink to example\u003c/a\u003e.\n    \u003c/body\u003e\n\u003c/html\u003e\n```\n\n2. The website is compiled, no dynamic handling or webpage redirecting.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffranceme%2Ffranceme.github.io","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffranceme%2Ffranceme.github.io","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffranceme%2Ffranceme.github.io/lists"}