CAW1 2014 Projet de Tom Andre-Poyaud et Gael RIBES

De Ensiwiki
Aller à : navigation, rechercher
Project schedule.png
Titre du projet PastaNything
Cadre Appli web

Équipe Tom ANDRE-POYAUDGael RIBES
Encadrants Sebastien VIARDOT


Presentation du projet

Description générale

Cahier des charges

Il s'agit d'un projet web pour l'Ensimag, un certain nombre de contraintes sont imposées :

  • Utilisation du framework Meteor (obligatoire) :
  • Gestion de droits avec différents niveaux d'utilisateurs (obligatoire) :
  • Gestion d'un flux RSS (optionnel) :
  • Utilisation d'un webservice (souhaitable) :
  • Une partie du site en GWT (souhaitable) :
  • Version mobile de l'application (optionnel) :

Réalisation

98 %
  • Interface
    99 %
    Toutes les pages sont faites, mais le CSS est perfectible. On pourrait améliorer le rendu Mobile.
  • Backend
    90 %
    Il doit rester quelques corner-case non-gérés, en plus du fait qu'on ne peut pas encore upload de fichiers/images.
  • Gestion des droits
    100 %
    La gestion des droits se fait sur 3 niveaux : anonyme, utilisateur et administrateur. Il n'y a pas eu de besoin d'autres niveaux.

L'application

Fonctionnement de l'application

La page d'accueil permet à l'utilisateur de coller un ou des objets (pour l'instant de type URL, Texte ou Code) qui sera(seront) ajouté(s) à la base de donnée. Un object collé s'appelle un "Pasta". Le but est de pouvoir partager rapidement ces types d'objets et/ou de créer des "albums" en en collant plusieurs en même temps. L'utilisateur reçoit ensuite une URL raccourcie permettant d'accéder à son/ses objets.

  • Pour une URL, l'accès à l'URL raccourcie fait une simple redirection vers l'URL collée. Dans ce cas là, l'application fait office de simple raccourcisseur d'URL.
  • Pour un Texte, l'accès à l'URL raccourcie présente le texte.
  • Pour un Code, l'accès à l'URL raccourcie présente le code, syntaxiquement coloré.

Si l'utilisateur s'enregistre sur le site, il pourra aussi :

  • Lister ses Pastas
  • Editer ses Pastas
  • Supprimer ses Pastas

Un administrateur pourra aussi lister tous les utilisateurs et voir tous leurs Pastas.

En plus de l'accès normal à l'adresse /shortUrl, un accès /raw/shortUrl existe. Il permet d'accéder aux données sans JavaScript. Ce type d'accès ne change rien pour les Pastas de type URL.

L'application est utilisable sur mobile, mais n'est pas mobile-first étant donné son but. En effet, elle est assez peu utile sur un téléphone.

Utilisateurs et Rôles

Roles.png


Améliorations possibles

  • Collage par Ctrl+V / Glisser-Déposer
  • REST API
  • Upload d'images et de fichiers
  • Gérer & afficher la date d'expiration pour les Pastas
  • Corriger des bugs
  • Un peu plus de commentaires

Le site

Sources

Builds

Installation du site

  1. Télécharger l'archive
  2. Extraire (tar xzvf bundled.tgz)
  3. Modifier le fichier settings.json pour configurer l'administrateur préinstallé.
  4. Lancer le fichier main.js avec NodeJs, suivez les instructions du README généré par Meteor

Il peut être plus simple d'utiliser la version de développement (i.e. installer Meteor et Meteorite et lancer directement les sources avec 1_test_start.sh).

Démonstration

Démonstration en direct

ScreenCast de l'application

Crédits