Skip to content

An open-source blog that focuses on creating posts in a collaborative and open way, where anyone can create a post and invite other users to contribute.

License

Notifications You must be signed in to change notification settings

Cauaspinheiro/we-book

Repository files navigation

Cover image

WeBook

📄 Overview

WeBook is an open-source blog that focuses on creating posts in a collaborative and open way, where anyone can create a post and invite other users to contribute.

Overview video

See full overview in video format

The app is available in the brazilian portuguese 🇧🇷 language. Support for the english language 🇺🇸 isn't planned.

🏭 Technologies

Turborepo

Turborepo is a high-performance build system for JavaScript and TypeScript codebases. (Source: Turborepo)

Official website

Nginx

Nginx is an HTTP and reverse proxy server, a mail proxy server and a generic TCP/UDP proxy server. (Source: Nginx)

Official website

RabbitMQ

RabbitMQ is an open-source message-broker software. (Source: RabbitMQ)

Used in this project for:

  • Communication between services.

Official website

Docker

Docker enables you to separate your applications from your infrastructure so you can deliver software quickly. (Source: Docker)

Used in this project for:

  • Locally run the infra layer (Postgres) with docker-compose using fast commands and a simple configuration

Official website

🧪 Additional Tools

Commitlint

Commitlint helps your team adhering to a commit convention. By supporting npm-installed configurations it makes sharing of commit conventions easy. (Source: Commitlint)

Official website

Commitizen

Commitizen define a standard way of committing rules and communicating it (using the cli provided by commitizen). (Source: Commitizen)

Official website

Lint-staged

Run linters against staged git files and don't let hankey slip into your code base! (Source: Lint-staged)

Official Github repository

ESLint

ESLint is a tool for identifying and reporting on patterns found in ECMAScript/JavaScript code. (Source: ESLint)

Official website

Prettier

Prettier is a code formatter. (Source: Prettier)

Official website

💻 Usage

You can run this monorepo in you local machine by following the Installation guide.

👷 Installation

You have to setup each app installation guide (located at the README.md file) to run all sub-projects inside this monorepo.

Running the local containers

You can run local docker containers inside docker-compose by running the following command:

docker-compose up -d

You have to run this command every time you want to start the containers. The containers stop if you shut down your machine


That's it! Now you can run the project on your local machine. See the scripts section for all available scripts

🏃 Scripts

ct

build

yarn build

Build all the monorepo projects artifacts for production using Turborepo CLI.

dev

yarn dev

Start all the monorepo projects with hot-reloading using Turborepo CLI.

lint

yarn lint

Lint all the monorepo projects code using Turborepo CLI.

ct

yarn ct

Run commitizen cli to make faster and better commits.

This command runs the lint-staged before executing the commitizen cli

💼 License

This project is licensed under the MIT License

About

An open-source blog that focuses on creating posts in a collaborative and open way, where anyone can create a post and invite other users to contribute.

Topics

Resources

License

Stars

Watchers

Forks

Languages