0
a Personal PaaS
Le cloud c'est bien mais...
nos données
sont mal exploitées
plus
de
vie
privée
Difficile d'y faire de
nouvelles choses
Cozy est un espace pour
vos web applications et
vos données
+
App
Collaboration
backup et synchronisation
faciles
un seul langage
performant
proxy
• Authentification
• Routage
• Ecrans de
login/enregistrements
# exemple
https://your-cozy.you.net/apps/notes
Reroute vers (dans la machine):
=> http://localhost:9202
home
• Front-end pour la
gestion des applications
• État des applications
• Market place
• Synchro proxy
data-system
• API Rest
• Documents JSON
• Indexes
• fichiers
• Droit d'accès
• Publication/Souscription
pub/sub
Basé sur axon (zmq-like)
Wrappé dans une lib maison:   
realtime adapter
Transmission au browser via websocket
# ODM classique
Note.create data, (err, note) ->            
console.log id
# Indexation
note.index ["title", "content"], ...
controller
• Démarrage / arrêt des apps
• Installation / suppression
• Mises à jour
• Déploie aussi le proxy, la
home et l...
conditions
Un fichier server.js ou server.coffee
à la racine
+
Manifeste NodeJS (package.json)
+
Paramètres Cozy (permissi...
{
"name": "KYou",
"description": "With KYou, have a better knowledge of yourself.",
"keywords": [ "quantifiedself" ],
"lic...
comment le controller déploie
Création d'un utilisateur Unix 
git clone
npm install
Il enregistre les informations de l'ap...
Painless Web Development
manifesto
1. Use template
2. Isolate your environments
3. Deploy fast
4. Make front-end dev easy
$ npm install cozy -g
$ npm install brunch -g
1. Use template
2. Isolate your environements
$ cozy new yourapp
$ cozy dev:init && cozy dev:start
3. Deploy fast
4. Make front-end dev easy
$ cozy deploy
$ cd client && brunch w
write your app for cozy
http://cozy.io/hack
Crédits photos : blaster_e11 
Licences Creative Commons
Cozy, a Personal PaaS
Cozy, a Personal PaaS
Cozy, a Personal PaaS
Cozy, a Personal PaaS
Cozy, a Personal PaaS
Cozy, a Personal PaaS
Cozy, a Personal PaaS
Upcoming SlideShare
Loading in...5
×

Cozy, a Personal PaaS

653

Published on

A French Talk about the Cozy Architecure
+ Painless Web Development Manifesto
performed @ Open World Forum 2013

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
653
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Cozy, a Personal PaaS"

  1. 1. a Personal PaaS
  2. 2. Le cloud c'est bien mais...
  3. 3. nos données sont mal exploitées
  4. 4. plus de vie privée
  5. 5. Difficile d'y faire de nouvelles choses
  6. 6. Cozy est un espace pour vos web applications et vos données
  7. 7. + App Collaboration
  8. 8. backup et synchronisation faciles un seul langage performant
  9. 9. proxy • Authentification • Routage • Ecrans de login/enregistrements
  10. 10. # exemple https://your-cozy.you.net/apps/notes Reroute vers (dans la machine): => http://localhost:9202
  11. 11. home • Front-end pour la gestion des applications • État des applications • Market place • Synchro proxy
  12. 12. data-system • API Rest • Documents JSON • Indexes • fichiers • Droit d'accès • Publication/Souscription
  13. 13. pub/sub Basé sur axon (zmq-like) Wrappé dans une lib maison:    realtime adapter Transmission au browser via websocket
  14. 14. # ODM classique Note.create data, (err, note) ->             console.log id # Indexation note.index ["title", "content"], callback Note.search "dragons", (err, notes) ...→ # Fichiers note.attachFile file.path, {name: file.name}, callback fileStream = note.getFile name, callback # Emails CozyAdapter = require 'juggling-cozy-adapter' data = to: "test@cozycloud.cc" from: "Cozy-test <test@cozycloud.cc>" subject: "Test jugglingdb" content: "Content of mail" CozyAdapter.sendMail data, callback # Pub/Sub realtime = RealtimeAdapter app, ['note.*'] realtime.on 'note.update', (event, id) → # do something...
  15. 15. controller • Démarrage / arrêt des apps • Installation / suppression • Mises à jour • Déploie aussi le proxy, la home et le Data System • CLI: cozy-monitor 
  16. 16. conditions Un fichier server.js ou server.coffee à la racine + Manifeste NodeJS (package.json) + Paramètres Cozy (permissions, widgets) 
  17. 17. { "name": "KYou", "description": "With KYou, have a better knowledge of yourself.", "keywords": [ "quantifiedself" ], "licenses": [{ "type": "AGPL v3.0", "url": "http://www.gnu.org/licenses/agpl-3.0.html" }], "version": "0.1.3", "homepage": "http://frankrousseau.github.io/kyou", "author": "Frank <frank@cozycloud.cc>", "contributors": ["Frank <frank@cozycloud.cc>"], "engines": { "node": "*" }, "main": "server.js", "scripts": { "start": "node server.js" }, "dependencies": { "americano": "0.2.5", "americano-cozy": "0.1.2" }, "devDependencies": {}, "repository": { "type": "git", "url": "git://github.com/frankrousseau/kyou" }, "optionalDependencies": {}, "cozy-permissions": { "Mail": { "description": "Track the number of mails you receive each day." }, "Task": { "description": "Track the number of tasks you achieve each day." } } }
  18. 18. comment le controller déploie Création d'un utilisateur Unix  git clone npm install Il enregistre les informations de l'application
  19. 19. Painless Web Development manifesto 1. Use template 2. Isolate your environments 3. Deploy fast 4. Make front-end dev easy
  20. 20. $ npm install cozy -g $ npm install brunch -g
  21. 21. 1. Use template 2. Isolate your environements $ cozy new yourapp $ cozy dev:init && cozy dev:start
  22. 22. 3. Deploy fast 4. Make front-end dev easy $ cozy deploy $ cd client && brunch w
  23. 23. write your app for cozy http://cozy.io/hack Crédits photos : blaster_e11  Licences Creative Commons
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×