{"id":20156105,"url":"https://github.com/openfun/blog","last_synced_at":"2026-03-19T14:12:14.011Z","repository":{"id":62981917,"uuid":"563561301","full_name":"openfun/blog","owner":"openfun","description":"📓 The technical blog of Open FUN","archived":false,"fork":false,"pushed_at":"2024-07-23T14:00:33.000Z","size":6299,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":9,"default_branch":"main","last_synced_at":"2025-03-03T01:44:49.670Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://blog.openfun.fr","language":"Makefile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/openfun.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE-posts.md","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}},"created_at":"2022-11-08T21:41:13.000Z","updated_at":"2022-11-23T14:39:28.000Z","dependencies_parsed_at":"2023-02-18T10:01:01.796Z","dependency_job_id":"f0eb4d0b-e9a2-4fe2-a9b7-c0fe347b228f","html_url":"https://github.com/openfun/blog","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/openfun/blog","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openfun%2Fblog","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openfun%2Fblog/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openfun%2Fblog/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openfun%2Fblog/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/openfun","download_url":"https://codeload.github.com/openfun/blog/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openfun%2Fblog/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30299110,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-09T14:33:48.460Z","status":"ssl_error","status_checked_at":"2026-03-09T14:33:48.027Z","response_time":61,"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":[],"created_at":"2024-11-13T23:37:35.818Z","updated_at":"2026-03-09T14:35:42.972Z","avatar_url":"https://github.com/openfun.png","language":"Makefile","readme":"# [Open FUN Blog](https://openfun.github.io/blog)\n\n[![Deployed](https://github.com/openfun/blog/actions/workflows/gh-pages.yml/badge.svg)](https://github.com/openfun/blog/actions/workflows/gh-pages.yml)\n\nThe technical blog of [Open FUN](https://github.com/openfun) powered by\n[Hugo](https://github.com/https://github.com/gohugoio/hugo) and the\n[blowfish](https://github.com/nunocoracao/blowfish) theme.\n\n## Getting started\n\nIf this is the first time you use this repository you must run the following command:\n\n```sh\nmake bootstrap\n```\n\nNext time you can simply use the command:\n\n```sh\nmake run\n```\n\nto start the Hugo development server.\n\nOnce this is done, Hugo is served on http://localhost:1313 🎉.\n\nYou are now able to write content! Take a look at the [next section](#authoring) to know how to do.\n\n## Authoring\n\n### Create a new post\n\nTo create a new post, run the command :\n\n```sh\nmake post\n```\n\nThen fill the prompt by providing the post title :\n\n```sh\nWhat is the title of the new post?\n\u003e\u003e\u003e\n```\n\nOnce the post created, post content is stored into `/content/posts/\u003cyour-new-post\u003e/` directory.\n\n#### Thumbnail\n\nPost images must be located into the same folder than the post itself. To use an image as thumbnail,\nit must be prefixed by `feature-`.\n\n### Add a new author\n\nAuthor descriptions are located into `data/authors` and author images are located into\n`assets/authors`.\n\n```sh\ncd data/authors\ncp template.json \u003cauthor_name\u003e.json\n```\n\nThen fill all fields with your personal information.\n\n#### Attach an author to a post\n\nWithin the post header, you can add an `authors` attributes. The author name corresponds to the name\nof the file you created previously.\n\ne.g:\n\n```md\ntitle: \"Post title\" ... authors:\n\n- \"\u003cauthor_name\u003e\"\n\n---\n```\n\n### Further information\n\nLet's go further? Have a look at the documentation of\n[blowfish](https://nunocoracao.github.io/blowfish/docs/) and\n[Hugo](https://gohugo.io/documentation/).\n\n## Contributing\n\nThis project is intended to be community-driven, so please, do not hesitate to get in touch if you\nhave any question related to our implementation or design decisions.\n\nWe try to raise our code quality standards and expect contributors to follow the recommendations\nfrom our [handbook](https://openfun.gitbooks.io/handbook/content).\n\n## License\n\n### Blog source code\n\nThis work is released under the MIT License (see [LICENSE](./LICENSE-website.md)).\n\n### Posts\n\nThis work is released under the CC-BY-SA 4.0 License (see [LICENSE](./LICENSE-posts.md)).\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenfun%2Fblog","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopenfun%2Fblog","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenfun%2Fblog/lists"}