Ionia-Devs / chameleon

https://chameleon-sandy.vercel.app
1 stars 1 forks source link

chameleon - README

Crafted with Nx: a smart, fast, and extensible build system.

Welcome to the chameleon project, a full-stack application that embodies adaptability and modern web development practices.

Getting Started 🚀

This section will guide you through setting up your local development environment for chameleon.

Prerequisites

Before you begin, ensure that you have the following installed:

✅ Node.js (v18.19.0)

Cloning the Repository

To start contributing to chameleon, clone the repository using the following command:

git clone https://github.com/Ionia-Devs/chameleon.git

Once cloned, navigate to the chameleon directory:

cd chameleon

Environment Setup 🌐

  1. Create an .env file from the .env.example template:

    cp .env.example .env
  2. Fill in the .env file with the necessary environment variables provided by your teammate.

Installing pnpm 📥

pnpm is our package manager of choice. To install pnpm, use one of the following methods:

After installing pnpm, install the project dependencies:

pnpm i

Nx Console Plugin 🖥️

Leverage the Nx Console VSCode Extension for a GUI that aids in command execution and component generation.

Running the Application 🏃‍♂️

Using Nx Console

Locate and execute the dev command within the chameleon workspace commands.

NX Console

Using the Command Line

Alternatively, you can start the application with:

pnpm exec nx run chameleon:dev

Access Points 🌐

Automated Database Deployment

Overview

Our project leverages GitHub Actions for seamless database schema changes integration and deployment, utilizing IssueOps commands for efficient management with PlanetScale.

Commands

Development Tools and Resources 🧰

Branching and Pull Requests

We use feature branches for development:

  1. Create a new branch for your feature or fix. The branch name should start with the number of the ticket you are working on, followed by a descriptive name in kebab-case. For example, 32-example-branch-name.
  2. Make your changes and commit them with clear messages.
  3. Push your branch to the main repository.
  4. Open a pull request (PR) against the main branch in the GitHub repository.

For a step-by-step guide, GitHub's documentation on creating a pull request from a branch is a great resource.

Branch Naming Restrictions

Avoid underscores (_) in branch names, as PlanetScale does not allow them. Use hyphens (-) instead.

Example

Linking Pull Requests to Issues

For enhanced project tracking, ensure you link your pull requests to their corresponding issues:

  1. Reference the issue in your pull request description using keywords like closes, fixes, or resolves followed by the issue number.
  2. Use the sidebar in the pull request or issue to manually link to the relevant issue under the 'Development' section.
  3. Check your work: When the PR is merged, the linked issues will close automatically, indicating the associated tasks are completed.

For more on linking PRs to issues, visit the GitHub Guide.

GitHub Projects Board

Stay updated with our progress and keep track of tasks on our GitHub Projects Board.

Production Environments 🌍

Support

If you encounter issues, please file a ticket in the issue tracker or contact one of the project maintainers.

Stay Connected 🌟

Join the conversation and follow along with project updates in the discord!