✨ 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.
This section will guide you through setting up your local development environment for chameleon.
Before you begin, ensure that you have the following installed:
✅ Node.js (v18.19.0)
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
Create an .env
file from the .env.example
template:
cp .env.example .env
Fill in the .env
file with the necessary environment variables provided by your teammate.
pnpm is our package manager of choice. To install pnpm, use one of the following methods:
With Homebrew:
brew install pnpm
With npm:
npm install -g pnpm
After installing pnpm, install the project dependencies:
pnpm i
Leverage the Nx Console VSCode Extension for a GUI that aids in command execution and component generation.
Locate and execute the dev
command within the chameleon workspace commands.
Alternatively, you can start the application with:
pnpm exec nx run chameleon:dev
http://localhost:3000
http://localhost:9991/graphql
Our project leverages GitHub Actions for seamless database schema changes integration and deployment, utilizing IssueOps commands for efficient management with PlanetScale.
/ps-create
: Creates a new database branch and deploy request for schema changes./ps-update
: Updates the schema on an existing database branch./ps-merge
: Merges approved schema changes into the main database branch./ps-approve
: Approves a deploy request for merging schema changes./ps-delete
: Deletes a database branch./ps-attach
: Associates a specific deploy request or database branch with the current GitHub branch.We use feature branches for development:
32-example-branch-name
.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.
Avoid underscores (_
) in branch names, as PlanetScale does not allow them. Use hyphens (-
) instead.
feature-add-new-table
feature_add_new_table
For enhanced project tracking, ensure you link your pull requests to their corresponding issues:
closes
, fixes
, or resolves
followed by the issue number.For more on linking PRs to issues, visit the GitHub Guide.
Stay updated with our progress and keep track of tasks on our GitHub Projects Board.
If you encounter issues, please file a ticket in the issue tracker or contact one of the project maintainers.
Join the conversation and follow along with project updates in the discord!