Skip to content

ourcodeorg/ourcode

Repository files navigation

OurCode

A platform for devs and students to collaborate on projects or research.

Functionality

  • Share a post with idea and possible stack, including experience level and tags. A brief intro for ideas is also required.
  • Profile with experience level and tags to improve recommendation system and search results.
  • People can apply to posts, and the sender can review the profile of the people who applied.
  • Sender can take as many people as they want. Once their application is accepted by the sender, they can now see the discord/slack link to talk to the sender about the project.

Tech Stack

  • FE: React/Next, daisyUI, tailwind
  • Backend: Nest (Render), Prisma, PSQL

Build Steps

Linux

  • Make sure to have the following installed:
    • node 16+
    • make
    • docker
    • docker compose
  • Run make to setup environment and migrate db.
  • Run make dev to start development environment [both frontend and backend].
  • Run make backend to run server [dev mode] and db, make frontend to run frontend [dev mode].
  • Run make prod to start production environment.
  • Run make logs for logs. (make logs c=backend for logs of backend).
  • Run make reload to restart containers. (make reload c=backend or make reload c=ourcode-db).
  • Run make down to stop and remove the containers.

Windows

Make sure you have nodejs 16+ and docker installed.

  • You can run .\setup.bat to setup environment variables and migrate the db.
  • And then .\dev.bat to start the db and both backend and frontend servers.
  • .\prod.bat can be used to demo the production environment.
  • docker compose down to stop the database.

You can also use the make build system if you want but this should be perfectly fine for now.

Make build system:

This provides more convenient approach but has some installation overhead.

  • Install the Cygwin terminal.
  • Make sure to install make at time of installation of cygwin.
  • In the cygwin terminal, cd to the working directory.
  • Follow the commands at the linux section.

If these techniques do not work on your windows pc, try the following:

  • In the cygwin terminal, run make to migrate the db.
  • Run make windows to start the db and backend server.
  • Run make down to stop the db container.

Coding Guidelines

  • All code should be reviewed by peer
  • Understandable commit messages
  • Will be using the GitHub Flow branching system to manage codebase
    • Main branch is the production branch
    • To add features or bug fixes, create a new branch for it

Contributors