From dc00c06719b5192518a67177caafe28f5027c16c Mon Sep 17 00:00:00 2001 From: eug-vs Date: Sun, 14 Mar 2021 01:50:11 +0300 Subject: feat: create initial feathers app --- index.ts | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 index.ts (limited to 'index.ts') diff --git a/index.ts b/index.ts new file mode 100644 index 0000000..a7411fd --- /dev/null +++ b/index.ts @@ -0,0 +1,35 @@ +import mongoose from 'mongoose'; +import Promise from 'bluebird'; +import app from './app'; + +mongoose.Promise = Promise; + + +const PORT = process.env.PORT || 3030; +const MONGODB_URL = process.env.MONGODB_URI || 'mongodb://localhost:27017/commercel'; +const { MONGODB_USER, MONGODB_PASSWORD } = process.env; + +mongoose.connect(MONGODB_URL, { + user: MONGODB_USER, + pass: MONGODB_PASSWORD, + useNewUrlParser: true, + useUnifiedTopology: true, + useCreateIndex: true, + useFindAndModify: false, + family: 4 // Use IPv4, skip trying IPv6 +}); + +const db = mongoose.connection; +db.on('error', console.error.bind(console, 'connection error:')); +db.once('open', () => { + console.log('Connection to MongoDB successful'); +}); + +// 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(() => app.channel('everybody')); + + +app.listen(PORT).on('listening', () => console.log(`Feathers server listening on localhost:${PORT}`)); + -- cgit v1.2.3