/projectmate

Supercharge your open-source contributions with projectmate.net; Discover open-source projects, connect with experienced maintainers, and collaborate with a community of passionate contributors. Join over 200+ registered users who are already making a difference

Primary LanguageTypeScriptMIT LicenseMIT

PROJECTMATE - Supercharge your open-source contributions

COVER-PROJECTMATE

Discover open-source projects, connect with experienced maintainers, and collaborate with a community of passionate contributors. Join over 200+ registered users who are already making a difference

Demo

Check out the web app 🌏 : https://projectmate.net/

LandingPage Screenshot

Connect with us

As a community, we always encourage people to share their thoughts and ideas. Do you want to talk to us? Join and Follow our Discord server and Twitter page ⬇️

DISCORD - Join TWITTER - Join

Figma design:

FIGMA - View

Tech stack

Next.js tailwind css MongoDB Prisma Figma

  1. Frontend - Next.js Client
  2. CSS Framework - Tailwind CSS
  3. Backend - NextJS APIs + Next Auth + MongoDB + Prisma ORM
  4. Design & Prototype - Figma

Installation steps

Standard installation

Prerequisites

Before getting into it, make sure you have yarn and prisma installed.


  1. Fork the project 🔧

  2. Clone the project by running the following command on the terminal 🔽

    git clone https://github.com/<your-github-username>/projectmate.git
  3. Go into the project directory 🔽

    cd projectmate
  4. Create an .env file from the .env.template file (copy everything in the .env.template file and put it in the .env file with appropriate values) 📄

    • MONGODB_URI is the connection string which you'll get from mongodb for reference.
    • NEXTAUTH_SECRET Just pass any random string or you can quickly create a good value on the command line via this openssl command.
    openssl rand -base64 32
  5. Install all the dependencies ✅

    yarn
  6. Synchronize your Prisma schema with your database schema 🗃

    yarn prisma db push
  7. Insert required data to your database ✅

    yarn prisma db seed
  8. Start the application development server 🚀

    yarn run dev

Installation using docker

NOTE: Docker set up is highly recommended mainly on linux systems due to possible performance issues on other platforms.

  1. Fork the project 🔧

  2. Clone the project by running the following command on the terminal 🔽

    git clone https://github.com/<your-github-username>/projectmate.git
  3. Go into the project directory 🔽

    cd projectmate
  4. Create an .env file from the .env.template file (copy everything in the .env.template file and put it in the .env file with appropriate values) 📄

    • MONGODB_URI is the connection string, in this case your connection string should look exactly like this mongodb://root:root@mongo:27017/projectmate?authSource=admin
    • NEXTAUTH_SECRET Just pass any random string or you can quickly create a good value on the command line via this openssl command.
    openssl rand -base64 32
  5. Build docker containers 🔽

    docker compose build
  6. Start containers in a background 🔽

    docker compose up -d
  7. Synchronize your Prisma schema with your database schema 🗃

    docker compose exec web yarn prisma db push
  8. Insert required data to your database ✅

    docker compose exec web yarn prisma db seed

    You can access logs from web or mongo container by docker compose logs e.g:

    docker compose logs web -f

    If you want to stop containers just run:

    docker compose stop

    Or if you want to stop and remove containers, networks:

    docker compose down

NOTE: If you want to add new package, you must use

 docker compose exec web yarn add [package]

Then (also if you pulled branch with changes to package.json) rebuild containers:

 docker compose up --build -d

You cannot perform yarn build from your local machine - you need to use:

 docker compose exec web yarn build

Contributing Guidelines 📜

Any contributions you make are truly appreciated, go to our CONTRIBUTING.md file for more information on how to contribute.

Code of Conduct 📜

View CODE_OF_CONDUCT.md

Contributors ✨

Support ⭐

Don't forget to support us by leaving a star ⭐

License 📃

projectmate is licensed under the MIT License - see the LICENSE file for the details.