feathers-chat-app
Example real time chat app with Feathers
About
Example real time chat app with Vue.js frontend, based on tutorial Building Your First Feathers App
Read my blog post Immutable deploys with data and testing for differences from the original Feathers Chat app example.
This project uses Feathers. An open source web framework for building modern real-time applications.
Getting Started
Getting up and running is as easy as 1, 2, 3.
-
Install your dependencies
cd path/to/feathers-chat-app; npm install
-
Start your app
npm start
Testing
Simply run npm test
and all your tests in the test/
directory will be run.
Scaffolding
Feathers has a powerful command line interface. Here are a few things it can do:
$ npm install -g feathers-cli # Install Feathers CLI
$ feathers generate service # Generate a new Service
$ feathers generate hook # Generate a new Hook
$ feathers generate model # Generate a new Model
$ feathers help # Show all commands
Help
For more information on all the things you can do with Feathers visit docs.feathersjs.com.
Changelog
0.1.0
- Initial release
License
Copyright (c) 2016
Licensed under the MIT license.
Deployment
To deploy to Zeit, need the database files to be in /tmp
folder.
Also, Zeit does not support socket.io, switched to using Feathers Rest
client.
Dumping and setting database
Each service stores its data in plain file using NeDB. To move / clone / copy database between deployments, I am using my middleware feathers-nedb-dump.
To dump messages
database to local file, edit file
get-messages.sh and run it.
./get-messages.sh
To set messages
database from local file, run
set-messages.sh.
Or use the combined script copy-data.sh
Building single bundle
In order to just run the server we can build single bundle out of all files
using node-browserify.
Run npm run build
and then get single file out.js
. To run node out.js
and it does not execute any require calls. See the build.js file.