/kollab

A private space for artists and producers alike to access each other's latest content and collaborate on ideas.

Primary LanguageJavaScript

Kollab.

The only professional tool you'll need to grow as a creative!

This is my capstone project that I have built from start to finish for BrainStations web development bootcamp. I was given the opportunity to demonstrate my knowledge by building a full-stack application over two weeks. I utilized React.js, SCSS, Node.js, Express.js, JWT, Knex, MySQL, and AWS S3 to build this project.

Click here to watch my demo presentation or you can try it out for yourself here using my demo account! (yakiv.yyz@gmail.com, password).

Kollab preview

Installation

Follow these steps to run a local instance of Kollab:
(You'll need node, npm, and MySQL already installed.)

  1. Clone or download this repo.

Set up the backend

  1. Create a new database in MySQL called kollab.

  2. Install server dependencies:

    Run npm install from inside the server directory.

    $ cd server
    $ npm install
  3. Run migrations

    $ npm run migrate
  4. Run seeds

    $ npm run seed
  5. Create AWS S3 bucket, set to public access

  6. Create bucket policy and retrieve bucket keys

  7. Set environment variables:

    Rename .env_template to .env and change placeholder values with your own.

    PORT=<PORT NUMBER>
    SECRET_KEY=<JWT SECRET KEY>
    DB_HOST=<HOST ADDRESS>
    DB_USER=<MYSQL DATABASE USER>
    DB_PASSWORD=<MYSQL DATABASE PASSWORD>
    AWS_BUCKET_NAME=<AWS S3 BUCKET NAME>
    AWS_BUCKET_REGION=<AWS S3 BUCKET REGION>
    AWS_ACCESS_KEY=<AWS S3 ACCESS KEY>
    AWS_SECRET_ACCESS_KEY=<AWS S3 SECRET ACCESS KEY>
  8. Start the server:

$ node index.js

Set up the frontend

  1. Install client dependencies:

    Run npm install from inside the client directory.

    $ cd ../client
    $ npm install
  2. Set environment variables:

Rename .env_template to .env and change the placeholder value to the port you set for the server.

REACT_APP_API_URL=http://localhost:<PORT SET IN /server/.env>
  1. Start the React app:
    $ npm start