hestialabs.org/{fr,en}/
⟵ since public launch;hestialabs.netlify.app/{fr,en}/
⟵ for development, prior to public launch.
- Multilingual site (fr/en)
- Content authoring system with NetlifyCMS
- Static publication system with Eleventy
- Authentication/authorization with Netlify Identity
- Hosting and CDN with Netlify Hosting
- Static homepage & site specific pages
- Blog system
- Contact form, with Netlify Forms
- Newsletter sign-up form, with Netlify Forms
- Get access rights — would you need editorial access to the website contents; or to administer our Netlify deployment & hosting infrastructure
- Setup your dev environment — develop features of the website, install prequisite tools and dependencies and start the dev server
- Execute the dev, build and deployment sequences — understand the execution modes, environments and how-to execute the dev, build and deployment sequences
- Contribute to codebase — design decisions you should know about and how-to submit code changes
The website is made of two major deliverables, whose sources are available in this repository:
- WEBSITE: publicly accessible website of HestiaLabs, in french and english;
- CMS: our content-authoring system (aka Netlify CMS) web app, accessible thru invite only.
/ ....................... NPM, 11ty & Netlify scripts for assembly, publishing & deployment
|
+-- conf/ ............... Config of our publish & deploy pipeline
| +-- 11ty/ ........... Eleventy config files included from .eleventy.js
| +-- netlify/ ........ Netlify config files
| +-- cms/ ........ NetlifyCMS webapp runtime config file, deployed to admin/ upon build
| +-- forms/ ...... Netlify Forms static definitions, deployed to admin/form/ upon build
|
+-- src/ ................ Sources (en/fr) of the components used to generate the website
| +-- components/ ..... Web Components (front-end) used in layouts
| +-- assets/ ......... Media assets, such as stylesheets and images used by theme or uploaded by users
| +-- fonts/ ...... Fonts of the theme
| +-- img/ ........ Images of the theme, directly added with Git
| +-- large-media/. Large media assets, directly added with Git, stored in Netlify Large Media Storage — which could be omitted from a checkout to save space, without breaking the preview too much
| +-- media/ ...... Media assets, uploaded by end-users with the CMS, stored in Netlify Large Media Storage
| +-- styles/ ..... Stylesheets of the theme
| +-- admin/ .......... NetlifyCMS single-page web app, to edit contents online
| +-- site/ ........... Actual contents of website, along with layouts and assets
| +-- _data/ ...... Fragments of data consumed by 11ty to generate static pages
| +-- _includes/ .. Includes consumed by 11ty to generate static pages
| +-- _layout/ .... Layouts consumed by 11ty to generate static pages
| +-- home/ ....... Main homepage
| +-- about/ ...... About us page
| +-- blog/ ....... Blog homepage, posts, authors and categories
| +-- contact/ .... Contact form
| +-- legal/ ...... Legal notice page
| +-- media/ ...... Press and media page
| +-- partners/ ... Partners page
| +-- projects/ ... Projects page
| +-- strategy/ ... Strategy page
|
+-- build/ .............. (transient) Generated website, in its various stages
| +-- 11ty/ ........... (transient) Generated by 11ty, picked up by Snowpack
| +-- snowpack/ ....... (transient) Generated by Snowpack and deployed by Netlify
|
+-- tools/ .............. Utility command-line scripts for development & administrative tasks
/
|
+-- netlify.toml ......... Netlify CB/CD and hosting config, which includes definition of
| runtime URL redirects, role-based access restrictions and HTTP-header overrides
+-- .eleventy.js ......... In-/out folders and config of 11ty build process
+-- .snowpack.config.js .. In-/out folders and config of Snowpack dev & build processes
+-- .gitattributes ....... Folders and files with Git LFS (Large File Storage) enabled
|
+-- conf/netlify/
+-- cms/config.yml ... NetlifyCMS webapp runtime config
+-- forms/*.html ..... Netlify Forms static definitions
Source folders contents are mounted at following public URLs, in the published website; the folders not represented hereafter are not published and mounted at URLs (source: .eleventy.js
):
/
|
+-- conf/
| +-- netlify/
| +-- cms/config.yml ⟶ /admin/config.yml
| +-- forms/*.html ——⟶ /admin/forms/
|
+-- src/
+-- components/ ———⟶ /components/
+-- assets/ ———————⟶ /assets/
+-- admin/ ————————⟶ /admin/
+-- site/
+-- _data/i18n ⟶ /assets/i18n/
+-- home/ —————⟶ /
+-- about/ ————⟶ /about/
+-- blog/ —————⟶ /blog/
+-- contact/ ——⟶ /contact/
+-- legal/ ————⟶ /legal/
+-- media/ ————⟶ /media/
+-- partners/ —⟶ /partners/
+-- projects/ —⟶ /projects/
+-- strategy/ —⟶ /strategy/