Skip to content

Latest commit

 

History

History
101 lines (63 loc) · 3.25 KB

CONTRIBUTING.md

File metadata and controls

101 lines (63 loc) · 3.25 KB

Contributing to LogChimp

Thank you for showing an interest in contributing to LogChimp! All kinds on contributions are valuable to us.

If you're a developer looking to contribute but aren't sure where to start, check out the good first issue label on GitHub. It contains small tasks suitable for new contributors. Or, if you're seeking something more challenging, explore the broader help wanted label, which includes issues that might pique your interest. If in doubt, please open a discussion; we can always convert that to an issue later.

AI Usage

The LogChimp project has strict rules for AI usage. Please see the AI Usage Policy. This is very important.

Directory structure

The repository is a monorepo, with backend APIs and frontend in a single repository.

packages
 ├── e2e
 ├── server
 ├── theme
 └── types

Contributing guide for E2E docs can be read here.

Getting Started

We will cover how you can quickly run LogChimp and make your first contribution.

Please make sure you've enough hardware resources (Memory, CPU, Disk Space) to run the application on your machine or use cloud environments like GitHub Spaces

  1. Docker
  2. GitHub CodeSpaces

1. Docker

  1. Clone the repository
git clone git@github.com:logchimp/logchimp.git <folder-name>
cd <folder-name>
  1. Prep the .env files

Run this command from the root directory.

cp ./packages/server/.env.example ./packages/server/.env; \
  cp ./packages/theme/.env.example ./packages/theme/.env; \
  cp ./packages/e2e/.env.example ./packages/e2e/.env
  1. Build the LogChimp Types package

We're still trying to figure out how to automate this step.

pnpm --filter="@logchimp/types" build
  1. Start the Docker containers

Run this command from the root directory.

docker compose -f ./docker/local/docker-compose.dev.yml up -d
  1. Start the LogChimp theme

If opening inside VSCode, open the command (Ctrl / Command + Shift + P), type Tasks: Run Task and hit enter, you will find the task in the list LogChimp Theme Dev and hit enter.

Or, you can run it manually

cd ./packages/theme
pnpm dev

2. GitHub CodeSpaces

There are no prerequisites for software or hardware requirements except for the Web Browser.

Once you run the CodeSpaces and the whole setup is complete.

If opening inside VSCode, open the command (Ctrl / Command + Shift + P), type Tasks: Run Task and hit enter, you will find the task in the list LogChimp Theme Dev and hit enter.

Other Ways to Help

While the primary means of contributing to LogChimp is through coding, there are still ways you can help even if you're not a developer. We always need help with:

  • Maintaining LogChimp Docs
  • Testing and quality assurance
  • Promoting LogChimp to others

Database

We use Knex ORM for integration with database and migrations.

We have a dedicated service called migrator in Docker Compose for running the database migrations.