Skip to content

PostIt is a group messaging app that enables people send and receive messages among each other

License

Notifications You must be signed in to change notification settings

nebanat/postit-aaron

Repository files navigation

License Build Status Coverage Status Maintainability

POSTIT

PostIt is modern web application that allows users to create groups and send and receive broadcast messages from their groups

PostIt is built with Javascript (ES6), ReactJs , Redux, NodeJs

Installation

  1. Install node, version 5 or greater

  2. Install postgres

  3. Clone the repo and cd into it

    git clone https://github.com/nebanat/postit-aaron.git
    cd postit-aaron
    
  4. Install all dependencies

    npm install
    
  5. Configure Postgres

    configure your database settings for development and test in
    `./server/config/config.json` 
    
  6. Run database migrations

    $ sequelize db:migrate
    
  7. Start the app

    npm start
    
  8. Open running application

    http://localhost:3000/
    

Features

  • Create an account with username,email and password.
  • Login with you new details(username,password).
  • Create a new group.
  • Post messages to groups you belong to.
  • Add a users(friends) to groups you created or belong to.
  • Retrieve list of messages in groups that you belong to.
  • View Group Members
  • Reset Password (In case you forget password)

Testing

The app uses:

  • Mocha/Chai and Chai-Http for backend testing.
  • Enzyme and Jest for frontend testing
  • NightWatch for End-2-End testing
  • npm test - to run test for backend
  • npm run client:test - to run test for frontend
  • npm run e2e-test - to run e2e test

Built With

  • NodeJS - A Javascript runtime built on chrome V8 engine that uses an event-driven non-blocking I/O model that makes it lightweight and efficient.
  • ExpressJS - A minimal and flexible Node.js web application framework that provides a robust set of features for web and mobile applications.
  • PostgreSQL - A powerful, open source object-relational database system.
  • Sequelize - An ORM for Node.js that supports the dialects of PostgreSQL and features solid transaction support an relations.
  • ReactJS - A JavaScript library for building user interfaces by Facebook.
  • Redux - A predictable state container for JavaScript apps.
  • MaterializeCSS - A CSS framework supported by Google.

Contributing

If you are interested in contributing to development of PostIt-Application,

Follow the instructions below to contribute.

  • Fork the repository

  • Make your change

  • Commit your change to your forked repository

  • Provide a detailed commit description

  • Raise a pull request against the develop branch

  • Please see Project wiki for project conventions

API Documentation

Click Here to view our detailed API documentation

License

MIT

FAQ

Who can contribute?

Anyone can! Just follow the contribution guidelines above

Is there a set standard for PRs to this repository?

Yes please check the project wiki for project conventions.

Can I clone this application for personal use?

Yes!. This application is licensed under MIT, and is open for
everybody

About

PostIt is a group messaging app that enables people send and receive messages among each other

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published