Thanks for your interest in improving Codexia! This guide explains how to set up your environment, make changes, and submit contributions.
Prerequisites:
- Tauri v2 toolchain (see https://v2.tauri.app/start/prerequisites/)
- Bun package manager
- Rust toolchain (for the Tauri backend)
Clone:
git clone https://github.com/milisp/codexia
cd codexiaInstall dependencies:
bun installOptional environment setup:
cp .env.example .envUse this when you need to configure local environment variables for development or cloud-backed integrations.
Run the app in development:
bun tauri devCopy the pre-commit hook used in this repo to prevent common frontend issues.
cp docs/pre-commit .git/hooks/pre-commitBuild the frontend only:
# codex app-server generate-ts -o src/bindings # Option to develop new codex feature
bun run buildRust checks and formatting:
cd src-tauri && cargo check
# cd src-tauri && cargo fmt --all # Option format- Fork the repository.
- Create a feature branch:
git checkout -b feature/amazing-feature. - Make changes with clear, English-only code comments and docs.
- Before pushing, verify builds pass:
bun run buildcd src-tauri && cargo check
- Push your branch:
git push origin feature/amazing-feature. - Open a Pull Request and describe your changes, rationale, and testing steps.
- Use GitHub Issues for bug reports and feature requests.
- Include steps to reproduce, expected vs. actual behavior, logs/screenshots, and environment details.
- Language: English-only for code comments and documentation.
- UI: shadcn UI components with Tailwind CSS.
- State: Zustand with persistence.
- Keep changes minimal, focused, and consistent with the existing codebase.
- Project usage: USAGE
- Architecture overview: ARCHITECTURE
- Tauri v2: https://v2.tauri.app/start/
- LLM Notes (Tauri): https://tauri.app/llms.txt