Giter Club home page Giter Club logo

trackdechets's Introduction

Trackdéchets

Gérer la traçabilité des déchets en toute sécurité

logo logo

Dépôt de code du projet Trackdéchets incubé à la Fabrique Numérique du Ministère de la Transition Écologique.

Ce README s'adresse aux intervenant·es techniques sur le projet. Pour plus d'infos en tant qu'utilisateur.ice du produit ou de l'API, vous pouvez consulter les liens suivants:

Integration tests

Build & Test

Architecture logicielle

Le projet est constitué de trois briques logicielles principales :

back front doc
Description API Trackdéchets Interface graphique (SPA) Documentation technique
Technologies Node.js
Typescript
Express.js
Apollo Server
Prisma ORM
PostgreSQL
Elasticsearch
React.js
Typescript
Apollo Client
Docusaurus

Dépôts de code connexes

Services externes

l'API Trackdéchets fait appel à plusieurs services externes :

  • Sendinblue pour l'envoi d'e-mails transactionnels.
  • MySendingBox pour l'envoi de courrier papier.
  • Serveur Gotenberg (auto-hébergé) pour le rendu des PDFs
  • Serveur Metabase (auto-hebergé) pour les analytics
  • Application distincte (auto-hebergée) pour les stats publiques

Infrastructure

L'applicatif et les bases de données sont hebergés en mode PaaS chez Scalingo.

Infra TD

Outillage

  • Github Actions pour l'intégration continue et le déploiement
  • Sentry pour le reporting des erreurs
  • Datadog pour le monitoring
  • Metabase pour l'analyse et la visualisation des données Trackdéchets
  • Matomo pour l'analyse du trafic web
  • Updown pour la page de statuts et les alertes
  • graphql-codegen pour générer la référence de l'API et le typage Typescript à partir des fichiers de définition GraphQL.

Environnements

Trois environnements sont déployés en parallèle :

Monitoring

Deux pages de monitoring sont accessibles:

Compatibilité navigateur

Le support des navigateurs est configuré dans le fichier ./front/.browserslistrc. La liste des navigateurs correspondant à cette config est disponible avec la commande suivante: npx browserslist ">0.1% not dead not op_mini all ie 11" À l'heure de la mise à jour de ce README.md, la liste est la suivante :

and_chr 98
and_ff 96
and_qq 10.4
and_uc 12.12
android 4.4.3-4.4.4
chrome 98
chrome 97
chrome 96
chrome 94
chrome 93
chrome 91
chrome 87
chrome 83
chrome 79
edge 98
edge 97
firefox 97
firefox 96
ie 11
ios_saf 15.2-15.3
ios_saf 15.0-15.1
ios_saf 14.5-14.8
ios_saf 14.0-14.4
ios_saf 13.4-13.7
ios_saf 12.2-12.5
ios_saf 6.0-6.1
opera 83
opera 82
safari 15.2-15.3
safari 15.1
safari 15
safari 14.1
safari 14
safari 13.1
samsung 16.0
samsung 15.0
samsung 14.0
samsung 13.0

Contribuer

Voir les conventions et bonnes pratiques sur CONTRIBUTING.md

L'équipe

La liste des contributeurs au projet est disponible sur AUTHORS.md

Licence

GNU Affero General Public License v3.0 ou plus récent

trackdechets's People

Contributors

benoitguigal avatar riron avatar providenz avatar elishowk avatar zhouzi avatar kornifex avatar julianajm avatar gaelferrand avatar dependabot[bot] avatar chrischarousset avatar snyk-bot avatar alfabouch avatar gurvanhenry avatar mickaelbergem avatar sofiyanifren avatar timothee-maisonnier avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.