All Projects → copleykj → Socialize Friendships

copleykj / Socialize Friendships

Licence: mit
A Meteor package for creating friendship functionality within your app.

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Socialize Friendships

Kickstart Meteor Polymer
⚡️ Kickstart a Meteor - Polymer project with MWC packages. (Flow Router is used to route)
Stars: ✭ 15 (-65.91%)
Mutual labels:  meteor
Fullcalendar React
Stars: ✭ 30 (-31.82%)
Mutual labels:  meteor
Orleans
Orleans is a cross-platform framework for building distributed applications with .NET
Stars: ✭ 8,131 (+18379.55%)
Mutual labels:  scalability
May
rust stackful coroutine library
Stars: ✭ 909 (+1965.91%)
Mutual labels:  scalability
Aws Scalable Big Blue Button Example
Demonstration of how to deploy a scalable video conference solution based on Big Blue Button
Stars: ✭ 29 (-34.09%)
Mutual labels:  scalability
Meteor Google Cloud
Automate Meteor deployments on Google Cloud App Engine Flexible
Stars: ✭ 32 (-27.27%)
Mutual labels:  meteor
Sapporo
Web App for hosting coding competition
Stars: ✭ 10 (-77.27%)
Mutual labels:  meteor
Meteor Collection2
A Meteor package that extends Mongo.Collection to provide support for specifying a schema and then validating against that schema when inserting and updating.
Stars: ✭ 1,020 (+2218.18%)
Mutual labels:  meteor
Meteor Collection Softremovable
Add soft remove to collections
Stars: ✭ 29 (-34.09%)
Mutual labels:  meteor
Autocms
AutoCms is a simple solution for your Meteor.js app
Stars: ✭ 34 (-22.73%)
Mutual labels:  meteor
Awesome Scalability
The Patterns of Scalable, Reliable, and Performant Large-Scale Systems
Stars: ✭ 36,688 (+83281.82%)
Mutual labels:  scalability
Create React Meteor App
Meteor + React for fast prototyping 🔥🔥
Stars: ✭ 28 (-36.36%)
Mutual labels:  meteor
Pulsarcast
A pub-sub system for the distributed web - my master thesis @ IST
Stars: ✭ 33 (-25%)
Mutual labels:  scalability
Rate Limit
Meteor package to rate-limit a function by queuing up calls (instead of dropping them like throttle or debounce)
Stars: ✭ 15 (-65.91%)
Mutual labels:  meteor
Aws Sdk
Using vertx-client for AWS SDK v2
Stars: ✭ 38 (-13.64%)
Mutual labels:  scalability
Maintainablecss.com Jekyll
Write CSS without worrying that overzealous, pre-existing styles will cause problems. MaintainableCSS is an approach to writing modular, scalable and of course, maintainable CSS.
Stars: ✭ 869 (+1875%)
Mutual labels:  scalability
Meteor Mantra React Redux Kickstarter
Basic structure for mantra architecture with flow router, react and redux
Stars: ✭ 30 (-31.82%)
Mutual labels:  meteor
Moosefs
MooseFS – Open Source, Petabyte, Fault-Tolerant, Highly Performing, Scalable Network Distributed File System (Software-Defined Storage)
Stars: ✭ 1,025 (+2229.55%)
Mutual labels:  scalability
Future Web
Starter kit to create PWA with cutting edge technologies
Stars: ✭ 38 (-13.64%)
Mutual labels:  meteor
Awesome Scalability Toolbox
My opinionated list of products and tools used for high-scalability projects
Stars: ✭ 34 (-22.73%)
Mutual labels:  scalability

Friendships

Provides social network style Friend Requests and Friendships.

This is a Meteor package with part of it's code published as a companion NPM package made to work with React Native. This allows your Meteor and React Native projects that use this package to share code between them to give you a competitive advantage when bringing your mobile and web application to market.

Supporting The Project

Finding the time to maintain FOSS projects can be quite difficult. I am myself responsible for over 30 personal projects across 2 platforms, as well as Multiple others maintained by the Meteor Community Packages organization. Therfore, if you appreciate my work, I ask that you either sponsor my work through GitHub, or donate via Paypal or Patreon. Every dollar helps give cause for spending my free time fielding issues, feature requests, pull requests and releasing updates. Info can be found in the "Sponsor this project" section of the GitHub Repo

Installation

This package relies on the npm package simpl-schema so when using with Meteor, you will need to make sure it is installed as well.

meteor npm install --save simpl-schema
meteor add socialize:messaging

React Native Installation

When using this package with React Native, the dependency tree ensures that simpl-schema is loaded so there's no need to install it as when using within Meteor.

npm install --save @socialize/user-friendships

Note

When using with React Native, you'll need to connect to a server which hosts the server side Meteor code for your app using Meteor.connect as per the @socialize/react-native-meteor documentation.

Basic Usage

When using this package with React Native you will need to import the package to cause the user class to be properly extended. This way new instances of the User class returned from Meteor.users find and findOne methods as well as Meteor.user() will have this packages methods available on them.

import '@socialize/friendships';
Meteor.users.findOne({username:'copleykj'}).requestFriendship();

Meteor.users.findOne({username:'storytellercz'}).acceptFriendshipRequest();

Meteor.user().requests().fetch(); // fetch all the requests from other users
Meteor.user().pendingRequests().fetch() // fetch all requests to other users

For a more in depth explanation of how to use this package see API.md

Requests

This package implements the socialize:requestable package to allow friendship requests between users

Requests are created by calling user.requestFriendship where user is an instance of the User class. The request will be created as a request from the currently logged in user to the user represented by user.

Other methods for retaining information about requests or interacting with requests pertaining to the current user are also available on the User class and are detailed in the User Extensions section of API.md.

Blocking

This package also implements blocking of other users through the socialize:user-blocking package and will not allow requests from blocked users. Also if a user is blocked and the user is a friend at the time of blocking, the friendship will be severed as well. For more information about the user-blocking API, refer to it's package documentation.

Scalability - Redis Oplog

This package implements cultofcoders:redis-oplog's namespaces to provide reactive scalability as an alternative to Meteor's livedata. Use of redis-oplog is not required and will not engage until you install the cultofcoders:redis-oplog package and configure it.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].