BorisTherin / basic-to-enhanced-nodejs-cli

finalize your project deployement, have a CLI providing self-installation for every final user, have a CLI providing help to configure your project for every final user, make it interactive thrue question & final user responses, bring enhanced design for the console
1 stars 0 forks source link

Implement --company opts #4

Open Jean-Baptiste-Lasselle opened 1 year ago

Jean-Baptiste-Lasselle commented 1 year ago

You bloody write in fraench litterature level understandable description of the task man

BorisTherin commented 1 year ago

Bien, notre CLI propose une option --company pour renseigner le nom de la compagnie, association,organisation,....

je propose de créer un module Astro qui sera dédié a cette/ces informations. je dits "ces" car avec 1 seul nom de compagnie, qu'en ferons nous ? un header ? un footer ? une modale ?

l'idée serais d'écrire ces informations dans un fichiers json qui sera utilisé part tel ou tel module astro dedié a ces informations, selon ce que l'on veux en faire.

ex: notre CLI écrit ce fichier company.json apres avoir requété les champs nécéssaires auprès de l'utilisateur du template

company = {
  name: '3forges', 
  legal: {
    siege: '....',
    telephone: '....',
    siret: '...',
    ...
  },
  socials: {
    mail: '...',
    web: [ 'site1.com', 'doc.site1.com', 'site2.org', ...],
    networks: {
      facebook: '..',
      X: '...',
      gab: '...',
      ....
    },
  ....
}

{ company.name }


* ex2: ```CompanySocials.astro```
```js
---
const { company } = getInfoFromCompanyJson()
---
<ul>
  <li> web: <a href='{company.web[0]'}>{company.socials.web[0]'}</a> </li>
  <li> mail: <a href='mailto:{company.socials.mail'}>{company.socials.mail'}</a> </li>
  { 
    company.socials.networks.map( () => {
    ...
    } )
  ...
  }
</ul>

J'ai pas encore fais le trie concernant, quelle part pour le CLI, quelle part pour l'utilisateur du template.

notre CLI est là pour un deploiment simple & rapide, encadré & sécurisé. ce n'est pas non plus un content-pusher.

les informations 'externes' au site web, mais composantes de la compagnie, comme ses reseaux sociaux, contact & siege (& autres a lister ensemble) me semblent pertinentes a delivré à l'instant du déploiment, mais je préconise que l'on s'arrête là.

BorisTherin commented 1 year ago

Aussi, on pourrait aborder le sujet sous l'angle d'un plug-in pour la CLI, histoire de forger notre art & demontrer celui-ci

BorisTherin commented 1 year ago

npx matrix-land-astro-template --company lenondelacompagnie vas subsituer le texte principal de la page d'acceuil si fournit