CollabCloud is a social networking platform for Developers
CollabCloud is a social networking platform built on top of Github’s API. It allows users to post Software Development related projects seeking collaborators, join projects, and find projects that would be best suited for their skillset and needs. This project will cater towards students and have extensive social networking features.
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
What things you need to install and run the application
- Node.js (runtime environment, Node package manager) node.js
- PostgreSQL (database server)
- Linux:
- MacOS: we suggest Postgres.app
- Windows:
- An Imgur API key (used for image hosting)
- A GitHub v3 API key (used to connect with your GitHub repos)
- OPTIONAL: The uuid command line tool (used to generate UUID namespace for .env file)
A step by step series of examples that tell you how to get a development environment running.
- Check out the latest code on the master branch
- Ensure that your PSQL database is running
- Create an environment file in the server directory
cd server && touch .env
- See here for more details about what to put in the .env file
- From the project directory root, install dependencies for both the client and server
cd client && npm install
cd server && npm install
- Run the program!
cd server && npm run dev
- Navigate to localhost:3000 on your favourite browser
- A user must have a GitHub account in order to register with CollabCloud
More to come soon...
- PostgreSQL - Database
- Express - Server Framework
- ReactJs - Front End Framework
- NodeJs - Server Environment
- GitHub API v3
- Imgur API
Your environment file in client/.env should be set up like the follow below:
REACT_APP_GITHUB_CLIENT_ID=
Note that you will need to restart the Create React App development server after making any modifications to this file.
Your environment file in server/config/.env should be set up like the following below:
# DO NOT COMMIT THIS FILE
# This is the environment variables file
# PSQL variables
DB_NAME=collabcloud
DB_USER=postgres
DB_PASS=''
DB_HOST=localhost
DB_PORT=
DB_LOGGING=FALSE
# TRUE
# UUID variables, to generate, use the `uuid` command line program
PROJECT_IDS_NAMESPACE=
FORUM_IDS_NAMESPACE=
PROJECT_NOTIFICATION_IDS_NAMESPACE=
# GitHub API variables
CLIENT_ID=
CLIENT_SECRET=
# Server variables
SERVER_PORT=5000
# Imgur API variables
IMG_CLIENT_ID=
IMG_CLIENT_SECRET=
IMG_ACCESS_TOKEN=
IMG_REFRESH_TOKEN=