---
title: Introduction
description: 'Welcome to Gitroom documentation'
---

<div className="w-full flex justify-center rounded-full">
    <img
      className="block dark:hidden"
      src="/logo/light.png"
      alt="Hero Light"
    />
    <img
      className="hidden dark:block"
      src="/logo/dark.png"
      alt="Hero Dark"
    />
</div>

## What is Gitroom?

Gitroom can help you launch your open-source tool every week<br />
<ul>
    <li>Schedule social media and articles.</li>
    <li>Exchange or buy posts from other members.</li>
    <li>Monitor your GitHub trending, and so much more.</li>
</ul>

## Architecture
Gitroom is an [NX monorepo](https://nx.dev) that contains a backend, a frontend, workers, cron jobs and the docs.<br /><br />
Unlike other NX project, this project has one `.env` file that is shared between all the apps.<br />
It makes it easier to develop and deploy the project.<br /><br />
When deploying to websites like [Railway](https://railway.app) or [Heroku](https://heroku.com), you can use a shared environment variables for all the apps.<br />

**It has four main components:**
- `frontend` - NextJS control panel serving as the admin dashboard for the project.
- `backend` - NestJS backend that serves as the API for the frontend.
- `cron` - NestJS cron jobs that run every X to update the database with new trending, refresh tokens and more.
- `workers` - NestJS workers that run every X to process scheduled posts, sync GitHub stars and more.

<CardGroup cols={2}>
  <Card
    title="Quick start"
    icon="pen-to-square"
    href="/quickstart"
  >
    Learn how to install the project and start using it
  </Card>
  <Card
    title="How it works"
    icon="screwdriver-wrench"
    href="/howitworks"
  >
    Learn the architecture of the project
  </Card>
</CardGroup>
