npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

galery-photo-chloe

v1.5.1

Published

Ceci est une API utilisée dans le cadre d'un site de photographe pro. L'idée est d'implémenter un système de galeries publiques / privée. Cette api va donc permettre d'avoir des galeries stockées en base de données, qui vont contenir des images pour les g

Downloads

3

Readme

API explication

Ceci est une API utilisée dans le cadre d'un site de photographe pro. L'idée est d'implémenter un système de galeries publiques / privée. Cette api va donc permettre d'avoir des galeries stockées en base de données, qui vont contenir des images pour les galeries publiques et des images + un user particulier dans les galeries privées. Concernant OAuth2, il est implémenté via le jwt et la couche de validation au moment de la connexion est suffisamment robuste pour le contexte de l'application

ORM

L'ORM utilisé est Mongoose. J'ai choisis de partir sur un stockage sur MongoDB pour diverses raisons. Les données, schémas de données ainsi que leurs types peuvent varier au fil du temps, l'accès aux données nécessitant un pattern commun et pour finir le contexte de l'application ne visant pas à traiter un large volume de données; ces raisons m'ont menées à m'orienter vers MongoDB qui est une base de données non relationnelle comportant l'intégralité des fonctionnalités nécessaires au bon fonctionnement de cette API.

Membre du groupe :

API mise en ligne via Heroku à l'adresse suivant :

API déployée sur npm :

  • galery-photo-chloe
  • Pour l'utiliser :
    • npm i galery-photo-chloe
    • dans un fichier index.js : const app = require('galery-photo-chloe');
    • créer un fichier .env à la racine avec les bonnes données en se basant sur le .env.example
    • node index.js

Installation des dépendances :

npm install

Database :

  • Créer un fichier .env à la racine avec les bonnes données en se basant sur le .env.example

Lancement du projet :

npm run dev

Collection Insomnia & Postman

  • Les collections sont disponibles dans le dossier ./src/collections

Features :

Users

  • Inscription et connexion d'un utilisateur avec gestion du role processor(admin) / user.
  • Voir l'utilisateur actif
  • Voir tous les utilisateurs (admin)
  • Supprimer un utilisateur (admin)
  • Toutes les routes sont protégées avec un JWT.

Posts

  • Ajouter une galerie (admin)
  • Supprimer une galerie (admin)
  • Mettre à jour une galerie (admin)
  • Voir toutes les galeries
  • Voir une galerie

Comptes enregistrés

Middlewares :

  • authenticated : Un middleware qui nous permet de savoir si un utilisateur est authentifié, par conséquent maitriser l'accés à certains endpoints.

  • jwt : Un middleware permettant de générer un token, sur la base des informations fournies par l'utilisateur et de l'authentifier en le comparant.

  • error : Un middleware permettant d'avoir une erreur de fallback lorsqu'aucune des précédentes erreurs prises en charge n'entre dans le contexte de cette dernière

  • validation : Un middleware permettant de passer tout nos schémas de validation utilisés par une méthode d'un controlleur

Technologies utilisées :