Écrire une appli web en une journée avec SQLPage

Posté par  (site web personnel) . Édité par Nÿco, Benoît Sibaud, gUI, BAud et bobble bubble. Modéré par Nÿco. Licence CC By‑SA.
54
4
juil.
2023
Technologie

Aujourd'hui, je souhaite vous présenter le logiciel SQLPage, un outil open-source (MIT) qui permet de développer des applications web complètes, avec une belle interface graphique et une base de données, entièrement en SQL.

Le SQL est un langage très simple, qui permet de faire des recherches dans des base de données. Il est utilisé depuis les années 80, et est encore omniprésent aujourd'hui. Contrairement aux langages de programmation traditionnels, on peut apprendre les bases de SQL en une journée, et commencer à faire des requêtes complexes croisant plusieurs tables de données très rapidement.

Dans une application web traditionnelle, on développe aujourd'hui en général trois composants :

  • un front-end, qui gère uniquement l'interface utilisateur,
  • un back-end, qui traite les requêtes du front-end et contient le cœur de la logique de l'application lorsque celle-ci est complexe,
  • une base de données qui va stocker et structurer les données, s'assurant de leur cohérence et de leur bonne organisation.

Les deux premiers éléments sont en général ceux sur lesquels les programmeurs passent le plus de temps lors du développement d'une application. Et pourtant, c'est souvent le dernier, la base de données, qui contient la substantifique moelle de l'application !

Ce que propose SQLPage, c'est de s'abstraire complètement du back-end et du front-end, et générer toute une application entièrement en SQL. Nous allons voir ici comment c'est possible, avec un exemple concret d'application que nous allons construire ensemble en SQL : à la Tricount.com, une petite application qui permet de gérer ses comptes entre amis.

G’MIC Online, le traitement d’image en ligne

Posté par  (site web personnel) . Édité par Davy Defaud, Florent Zara, baud123 et Nils Ratusznik. Modéré par rootix. Licence CC By‑SA.
54
15
oct.
2012
Audiovisuel

Le GREYC, laboratoire de recherche en informatique, image, automatique et instrumentation du CNRS situé à Caen, a mis en ligne un service Web (Web service) basé sur le logiciel libre G’MIC (GREYC’s Magic Image Converter, développé dans ce même laboratoire) permettant d’appliquer des filtres/effets sur des images, directement à partir d’un navigateur Web.

Mascotte Gmicky

C’est à l’occasion de la sortie de la nouvelle version majeure 1.5.2.0 de G’MIC que cette interface Web a été mise en place. Elle reprend les principaux éléments du greffon G’MIC pour GIMP : un arbre des filtres disponibles (+ de 200 actuellement), une fenêtre de prévisualisation de l’effet sélectionné et un panneau de réglage des paramètres.

Des détails sur ce service et sur les nouveautés du projet G’MIC, dans la deuxième partie de la dépêche.

Journal Funkwhale, un serveur de musique libre, moderne et convivial, qui recherche des contributeurs

Posté par  . Licence CC By‑SA.
52
21
mar.
2018

Je viens de publier la version 0.7 de funkwhale, et je me suis dis que c'était l'occasion de présenter le projet un peu plus largement.

Liens utiles

Funkwhale, c'est quoi ?

On parle d'un serveur de musique sous licence libre (BSD-3, il n'est pas impossible que ça bouge), fortement inspiré de l'expérience proposée par le désormais défunt Grooveshark.com.

L'idée principale, c'est de pouvoir mettre sa bibliothèque musicale en ligne (…)

Journal Mercure : un nouveau protocole web pour mettre à jour les navigateurs en temps réel ("push")

Posté par  (site web personnel) . Licence CC By‑SA.
52
27
nov.
2018

Cher journal,

J'ai récemment publié un nouveau protocole (ouvert) nommé Mercure, ainsi qu'une implémentation de référence écrite en Go (libre, sous licence AGPL).

Mercure permet de "pousser" en temps réel des données depuis des serveurs vers des navigateurs web (ou autres clients HTTP). La spécification et l'implémentation sont disponibles sur GitHub.

Le projet peut être considéré comme un remplaçant de WebSocket (bien que le protocole soit de plus haut niveau), et des solutions propriétaires telles que Pusher.

Contrairement à (…)

Journal Qui traite des autorités SSL WoSign, Startcom et du peu de professionnalisme qui a causé leur perte

Posté par  (site web personnel) . Licence CC By‑SA.
50
27
sept.
2016

Chers lectrices, lecteurs, auditrices et auditeurs pour les éventuel(le)s aveugles et autres malvoyant(e)s qui utilisent un lecteur d’écran,



Je souhaite aujourd’hui vous parler de ce que vient d’annoncer Mozilla (en anglais et avec JavaScript, cookies et tout le bataclan, disponible ici en PDF ou en PNG pour les réfractaires à l’overkill) au sujet de Starcom et WoSign.

Pour ceux qui ignoreraient l’identité de ces deux organismes, Startcom est une autorité de certification SSL (…)

Journal SSL ...

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
50
24
mar.
2011

Chaque fois qu'on parle de sécurité sur le Web, voir sur Internet, SSL est très souvent la réponse. Ce protocole permet de sécurisé les communications avec des algorithmes de chiffrement évolués que je ne peux contester, je n'en ai pas les connaissances.

Par contre ce que je peux contester, c'est l'architecture basée sur un tiers de confiance. En effet, le SSL repose sur une entité en qui on doit la pleine et entière confiance afin de transmettre nos messages (…)

Firefox 30 glorieuses

49
12
juin
2014
Mozilla

Firefox 30 est sorti !

Après une version 29 riche en changements, la version 30 est plus calme pour la version bureau. La version mobile (Android) voit ses fonctionnalités d'accueil améliorées.

Faille dans SSL 3.0 et TLS 1.0

Posté par  . Modéré par patrick_g. Licence CC By‑SA.
49
25
sept.
2011
Sécurité

Une faille de sécurité dans le protocole SSL 3.0 (et inférieur) et TLS 1.0 a été découverte. Ces protocoles garantissent l’accès chiffré aux serveurs Web. Il n’y a donc plus aucun site Web qui est à l’abri d’une attaque « man in the middle ».

Concrètement, l’attaque consiste à injecter du texte connu dans une page Web (via du JavaScript introduit dans une publicité vérolée, par exemple). Après, il suffit d’écouter la conversion (il faut quand même une session de 30 minutes pour l’exploit actuel) pour découvrir la clef AES. L’exploit permet donc de déchiffrer la page, mais aussi les cookies, et donc de s’identifier sur le site visé.

La faille concerne la version 1.0 de TLS et est corrigée dans la version 1.1, sortie en 2006. En outre, OpenSSL propose un contournement depuis 2004 ; il consiste à injecter des données aléatoires dans la transaction. Malheureusement, les navigateurs utilisent principalement NSS plutôt qu’OpenSSL, et même si sur le serveur on peut forcer l’utilisation de TLS 1.1 ou 1.2, très peu de navigateurs Web les supportent, ce qui freine le déploiement sur les serveurs. Actuellement, seuls IE 9 et Opera en sont capables !

Il faut cependant noter que ces failles sont connues depuis longtemps, c’est ce qui avait mené au correctif dans OpenSSL et à la création de TLS 1.1. Mais c’est la première fois qu’une attaque est publiée, validant ces propositions.

Quelques conseils de navigation :

  • utiliser l’extension Firefox noscript ;
  • actuellement, là où l’attaque pourra faire le plus de dégât, est sur les webmails ou sur les systèmes de paiement tels que Paypal (ben oui, si quelqu’un pirate ma connexion sur LinuxFr.org, ce ne sera pas très grave, car j’utilise différents mots de passe). Privilégiez donc les clients de messagerie électronique comme mutt ou Thunderbird, en désactivant le HTML.

Merci à Altor pour son aide lors de la rédaction de cette dépêche.

Wapiti 3.0.0 : Nouvelle version du scanneur de vulnérabilités Web

Posté par  . Édité par Benoît Sibaud, palm123, Davy Defaud et bubar🦥. Modéré par bubar🦥. Licence CC By‑SA.
48
14
jan.
2018
Sécurité

Wapiti est un scanneur de vulnérabilités Web publié sous licence GNU GPL v2.

Il permet de détecter la présence de failles courantes (injection SQL, XSS, inclusion de fichier, exécution de code ou de commande, etc.) sur les sites Internet et les applications Web via différents modules d’attaque. L’exploitation des failles remontées n’est pas gérée par le logiciel, l’utilisateur doit donc procéder à l’exploitation lui‐même ou s’en remettre à un logiciel spécifique (comme sqlmap pour les failles SQL).

Wapiti génère des rapports de vulnérabilités dans différents formats (HTML, texte, JSON, XML). C’est un outil en ligne de commande qui a peu de dépendances et s’installe facilement.

SPARQL, le SQL du Web, et Linked Data Fragment : le point sur le requêtage du Web

Posté par  . Édité par Davy Defaud, bubar🦥, palm123, Benoît Sibaud et ZeroHeure. Modéré par Nils Ratusznik. Licence CC By‑SA.
Étiquettes :
48
1
jan.
2017
Base de données

« Chère pêche »,

En ce début d'année, il ne me semble pas inutile de faire le pont entre la rétrospective et la perspective, afin de conjuguer l’avenir du Web au présent. :-)

Le but de cette dépêche est de faire un tour d’horizon de technologies permettant de faire des requêtes sur des données structurées : le Web sémantique. Comment il a évolué en dix ou quinze ans et ce qu’il permet de faire. Après une introduction contextuelle et historique, il sera question de Sparql et de linked data fragments, ainsi que de leurs usages en pratique chez Wikimedia Foundation.

Accrochez‐vous à votre fauteuil, il va être question de niveaux d’abstractions, d’enrichissement croisé de données, de manipulation de tables, de la pertinence du choix de RDF par rapport à SQL, des outils utilisés par les contributeurs Wikimedia mis au point par les développeurs du projet et, enfin, des limites actuelles et d’un avenir possible.

DuckDuckGo

Posté par  . Modéré par Bruno Michel. Licence CC By‑SA.
47
8
avr.
2011
Internet

DuckDuckGo est un moteur de recherche.

Créé par Gabriel Weinberg en février 2008, il utilise les résultats d'autres sites web (Crowdsourcing) comme Wikipedia. Son objectif est de permettre un accès rapide, pertinent et confidentiel à ces données brutes.

DuckDuckGo se différencie d'autres moteurs de recherche par une réelle confidentialité (versions SSL, non-JS, avec un service Tor caché, possibilité de remplacer le stockage des préférences personnelles par des urls personnalisées au lieu de cookies…).

Il vise aussi à donner une expérience de recherche plus rapide. Sur ce point, il permet d'obtenir des "réponses instantanées", c'est-à-dire des informations sans avoir besoin de cliquer sur l'un des résultats d'une recherche (un ou deux exemples). De plus, la syntaxe !bang permet d'effectuer des recherches sur des sites via DuckDuckGo. Ainsi, au lieu de taper "amazon" dans un moteur de recherche puis le titre du livre que vous voulez acheter sur le site d'amazon, vous pouvez taper directement, dans DuckDuckGo, "!a titre" ("!a" indique que "titre" sera cherché directement sur amazon.fr).

Le modèle économique de DuckDuckGo repose sur une publicité minimale et désactivable et sur les ventes effectuées à partir d'une recherche avec DuckDuckGo sur des site comme Amazon ou eBay. Il est possible de sélectionner le français pour la recherche mais pas encore pour l'interface.

Enfin, pour ne rien gâcher, DuckDuckGo consacre une partie de ses revenus à financer des projets libres.

Journal web moderne, bases de données et beauté logiciel libre

47
11
juin
2014

J'aimerais parler ici de mon expérience lors du développement de sql.js, un port de SQLite en javascript. Pour ceux qui ne s’intéressent pas aux technologies du web, la fin de ce journal pourrait quand même vous intéresser, on va parler de SQLite.

Web moderne

Ceux d'entre vous qui s'intéressent aux technologies modernes du web ont certainement entendu parler d’emscripten, et d’asm.js.

Emscripten est un compilateur de bitcode LLVM en Javascript. Il permet de compiler du (…)

Journal Internet, "Le Monde", et la 4G et la fibre optique

Posté par  . Licence CC By‑SA.
46
23
mar.
2014

En ce dimanche pluvieux, j'essaie de savoir ce qui se passe dans le monde, et donc de visiter un des plus grands sites d'information, i.e. « Le Monde »

  • Première remarque, c'est très lent, vraiment très lent.
  • Si j'essaie de naviguer avec Adblock désactivé, c'est impossible. trop de pub, mon ordi explose. Il est vrai que je n'ai qu'un dual core avec 4G de ram.
  • Je lance Firebug, et là je comprends tout:

Voilà une petite liste des sites que je visite (…)

Journal Eolie: 6 mois plus tard.

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
46
31
oct.
2017

Eolie est un navigateur web pour Gnome qui se veut une alternative à Epiphany::
http://gnumdk.github.io/eolie-web

Quoi de neuf depuis le dernier journal?
https://linuxfr.org/users/gnumdk/journaux/eolie-le-petit-frere-de-lollypop

WebKitGTK est passé en version 2.18 apportant son lot de corrections de bug sur le rendu des pages Web. Au niveau d'Eolie, l'interface a été entièrement revue.

Eolie est maintenant mon navigateur par défaut (j'ai enfin pu me débarrasser de Firefox, de son interface multi plateforme et donc mal intégrée). Ancien utilisateur de rekonq du temps où (…)

Journal mes-aides.gouv.fr, simulez vos aides en ligne !

Posté par  . Licence CC By‑SA.
Étiquettes :
46
30
oct.
2014

Pour mon premier journal, je fais un journal bookmark !

mes-aides.gouv.fr est un site web permettant de découvrir les aides du gouvernements français dont vous pouvez bénéficier. Pour l'instant en bêta, il permet déjà de tester si on peut avoir le droit à certaines aides. L'interface est claire et simple ce qui est rare sur ce genre de site.

Encore plus rare, il repose sur des outils libre dont Bootstrap, node.js et angular.

Et encore plus rare, une partie du site (…)