Giter VIP home page Giter VIP logo

pop-corn's People

Contributors

dependabot[bot] avatar emeric254 avatar sandurago avatar

Watchers

 avatar  avatar

pop-corn's Issues

Structure des données "carte"

{
  "1": {
    "id": "zone 1",
    "nom": "stand à bonbons"
    "description": "",
  },
  "80": {
    "id": "80",
    "nom": "scène principale",
    "description": ""
  },
  "restauration 1": {
    "id": "restauration 1",
    "nom": "scène principale",
    "description": ""
  }
}

Page administration carte

bonus :

  • bouton "importer" pour importer un fichier vers le serveur
  • bouton "exporter" pour télécharger un fichier depuis le serveur

pas besoin d'un style très abouti, ne sert qu'aux organisateurs

Page administration planning

bonus :

  • bouton "importer" pour importer un fichier vers le serveur
  • bouton "exporter" pour télécharger un fichier depuis le serveur

pas besoin d'un style très abouti, ne sert qu'aux organisateurs

Configuration des images pour deploiement en conteneur

popcon-compagnon :

  • Dockerfile
  • edition package.json pour ajouter la tache 'podman'
  • Dockerfile-test
  • edition package.json pour ajouter la tache 'test'

popcon-organisation :

  • Dockerfile
  • build.sh
  • Dockerfile-test
  • test.sh

Page planning

  • chargement de fichier ((Fetch API)[https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API])
    • données *.json
  • boutons de choix du jour
  • liste des activités du jour choisi
  • affichage des details de l’activité cliquée
    • lien vers la carte
  • champs de recherche / filtrage
    • champs de saisie de texte pour chercher le nom d'une activité ou d'un intervenant
    • selection de catégorie d'activité
  • style
    • boutons
    • liste des activités ~= sous forme de calendrier ?
    • details des activités ~= accordéon ?

Page d'accueil

  • Titre (popcon) + image de la mascotte/logo de l'événement
  • boutons
    • "consulter la carte" -> navigation vers la page carte
    • "planning" -> navigation vers la page planning
  • lien vers le site popcon ( https://popcon.show/ )
  • bas de page - copyright

Add `site.webmanifest` and more HTML <meta>

the index.html file shoudl start like this

<html>
  <head>
    <meta charset="utf-8">
    <link rel="icon" href="<%= BASE_URL %>icons/favicon.ico">
    <link rel="canonical" href="https://mobile.popcon.show" />
    <title>POPCON</title>
    <meta name="author" content="POPCON">
    <meta name="description" content="DESCRIPTION POPCON">
    
    <link rel="manifest" href="<%= BASE_URL %>site.webmanifest">

needs #11 to be completed, because the following file need some of the favicon set.

the site.webmanifest file contains :

{
    "name": "POPCON",
    "short_name": "POPCON",
    "start_url": "/",
    "icons": [
        {
            "src": "/icons/android-chrome-192x192.png",
            "sizes": "192x192",
            "type": "image/png"
        },
        {
            "src": "/icons/android-chrome-512x512.png",
            "sizes": "512x512",
            "type": "image/png",
            "purpose": "any maskable"
        }
    ],
    "theme_color": "#ffffff",
    "background_color": "#ffffff",
    "display": "standalone"
}

Page d'accueil d'administration

  • titre "popcon-administration"

si non connecté

  • écran de connexion
    • formulaire
      • email
      • mot de passe
    • bouton "conexion"

si connecté

  • boutons de navigation vers les pages d'administration
    • "carte"
    • "planning"

pas besoin d'un style très abouti, ne sert qu'aux organisateurs

API organisation

  • /jeton
    • POST -> connexion et recuperation d'un jeton
    • GET -> rafraichir le jeton
  • /planning
    • /planning/activites
      • GET -> retourne la liste des activites
      • POST -> creation d'une nouvelle activite
      • /planning/activites/<activite id>
        • GET -> retourne l'activite
        • PUT -> modification complete d'une activite
        • DELETE -> suppression d'une activite
    • /planning/importer
      • POST -> creer un planning depuis un fichier
    • /planning/exporter
      • POST -> exporter un planning vers un fichier
  • /carte
    • /carte/zones
      • GET -> retourne la liste des zones
      • POST -> creation d'une nouvelle zone
      • /carte/zones/<zone id>
        • GET -> retourne la zone
        • PUT -> modification complete d'une zone
        • DELETE -> suppression d'une zone
    • /carte/importer
      • POST -> creer une carte depuis un fichier
    • /carte/exporter
      • POST -> exporter une carte vers un fichier

Page carte

  • chargement de fichier ((Fetch API)[https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API])
    • fond fixe carte *.jpg
    • calque interactif *.svg
    • données *.json
    • affichage d'un icône chargement ?
  • style
    • composant "carte"
      • alignement au centre (horizontal et vertical)
      • taille automatique
    • zones cliquables
      • style :hover
      • style unselected
      • style selected
      • animations ?
  • gestion des événements
    • affichage d'une modale lors du clic sur une zone
    • sur un écran "assez large", bouger la carte et positioner un "tooltip" a cote de la selection ?
  • gestion des paramètres de la page
    • zone={id} selection et ouvre les details de cette zone directement

Add "mobile friendly" favicon set

Use a set of favicon to please all the different mobiles ...

you need to add that into the <html><head>

    <link rel="apple-touch-icon" sizes="180x180" href="<%= BASE_URL %>icons/apple-touch-icon.png">
    <link rel="icon" type="image/png" sizes="32x32" href="<%= BASE_URL %>icons/favicon-32x32.png">
    <link rel="icon" type="image/png" sizes="16x16" href="<%= BASE_URL %>icons/favicon-16x16.png">
    <link rel="mask-icon" href="<%= BASE_URL %>icons/safari-pinned-tab.svg" color="#5bbad5">

Add "mobile friendly" HTML <meta>

To put inside the <html><head>

    <meta name="viewport" content="width=device-width,initial-scale=1.0">
    <meta name="HandheldFriendly" content="true" />
    <meta name="apple-mobile-web-app-capable" content="yes" /> 
    <meta name="apple-mobile-web-app-status-bar-style" content="black" />  
    <meta name="msapplication-TileColor" content="#da532c">
    <meta name="theme-color" content="#ffffff">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">

refs:

Structure des données "planning"

Les date et durée respectent toutes le standard ISO8601

{
  "concert de K-pop": {
    "nom": "concert de K-pop",
    "description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit.",
    "mots_clef": [
      "K-pop",
      "concert",
    ],
    "debut": "2022-09-10T17:55:07+02:00",
    "duree": "PT1H10M",
    "zone": "<id zone>"
  },
  "défilé de cosplayeurs": {
    "nom": "défilé de cosplayeurs",
    "description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit.",
    "mots_clef": [
      "cosplay",
      "VIP"
    ],
    "debut": "2022-09-11T09:05:54+02:00",
    "duree": "PT15M",
    "zone": "<id zone>"
  },
  "rencontre avec M. X": {
    "nom": "rencontre avec M. X",
    "description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit.",
    "mots_clef": [
      "rencontre",
      "M. X"
    ],
    "debut": "2022-09-11T15:30:00+02:00",
    "duree": "PT30M",
    "zone": "<id zone>"
  },
  "autographes avec M. X": {
    "nom": "autographes avec M. X",
    "description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit.",
    "mots_clef": [
      "autographes",
      "M. X"
    ],
    "debut": "2022-09-11T16:00:00+02:00",
    "duree": "PT1H",
    "zone": "<id zone>"
  }
}

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.