Skip to content

bahmutov/feathers-chat-app

Repository files navigation

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.

  1. Make sure you have NodeJS and npm installed.

  2. Install your dependencies

    cd path/to/feathers-chat-app; npm install
    
  3. 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.

About

Example Feathers chat app with Vue.js front end

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages