From 977992eb70a0ca3b702e116b628d37ac75e667d1 Mon Sep 17 00:00:00 2001 From: eug-vs Date: Mon, 8 Jun 2020 16:29:43 +0300 Subject: feat: initialize feathers app with PollService --- app.ts | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 app.ts (limited to 'app.ts') diff --git a/app.ts b/app.ts new file mode 100644 index 0000000..7607537 --- /dev/null +++ b/app.ts @@ -0,0 +1,45 @@ +import feathers from '@feathersjs/feathers'; +import '@feathersjs/transport-commons'; +import express from '@feathersjs/express'; +import socketio from '@feathersjs/socketio'; + +import { PollService } from './PollService'; + +const app = express(feathers()); + +app.use(express.json()); +app.use(express.urlencoded({ extended: true })); +app.use(express.static(__dirname)); +app.configure(express.rest()); +app.configure(socketio()); +app.use(express.errorHandler()); + +app.use('/polls', new PollService()); + + +// Add any new real-time connection to the `everybody` channel +app.on('connection', connection => + app.channel('everybody').join(connection) +); +// Publish all events to the `everybody` channel +app.publish(data => app.channel('everybody')); + + +app.listen(3030).on('listening', () => + console.log('Feathers server listening on localhost:3030') +); + +// For good measure let's create a message +// So our API doesn't look so empty +app.service('polls').create({ + contents: { + left: { + url: 'https://github.com/eug-vs.png', + votes: 10 + }, + right: { + url: 'https://github.com/ilyayudovin.png', + votes: 15 + } + } +}); -- cgit v1.2.3