Issues
Use structured bug and feature forms. Label by type, domain, and priority. Keep one actionable item per issue.
Understand the project, set up a development workspace, and find your way into the code.
Fieldjig is a construction field-management project for contractors, project managers, field crews, and office teams. It brings project coordination, crew time, daily reports, documents, and administrative workflows into a self-hosted application.
Our goal is to give smaller construction businesses access to practical management tools without breaking the bank. We're building an open-source, self-hosted alternative to costly larger platforms, while recognizing that hosting, setup, and ongoing maintenance still require a budget.
The code currently lives in the public Fieldjig repository. Older technical documents may use the previous project name, project-manager-app.
Migration, mobile parity, and verification work are ongoing. Test workflows in an isolated environment before using real employee, payroll, or project data.
The development checklist records implemented timecard lifecycle flows, daily-report workflows, document management, admin task tools, and a payroll foundation. Project workflows, reporting, mobile coverage, and other domains still have open work.
Feature completion is not a security or compliance certification. Payroll calculations and operational controls need validation for your organization and jurisdiction.
Read the feature checklistThe current frontend manifest includes flux-icons-pro-pack. Confirm its availability and licensing, along with any other restricted dependencies, before assuming a clean install works without additional access.
This is a development starting point, not a production installer. Use a disposable database and review the repository's current instructions before running setup.
git clone https://github.com/eli-reid/fieldjig.git
cd fieldjig
composer install
npm installCopy .env.example to .env using your file manager or shell. Set your local application URL and database connection. Never commit that file or share credentials.
php artisan key:generate
php artisan migrate
npm run build
composer run devKeep the development process running and open the local URL printed by the server. The repository includes automated tests; run the affected tests for your changes.
If package installation or migrations fail, stop and resolve the reported error. Do not use real production data to work around setup failures.
Production setup needs more than uploading a source archive. Serve the Laravel public directory over HTTPS, disable debug output, provision persistent storage, and configure workers and the scheduler.
The existing runbook refers to a production branch. Confirm that branch and your deployment policy before following it.
The application uses Laravel 12 and Livewire. Cross-cutting platform systems live under app/Core; business features live under app/Domains. Services and actions own business logic, while UI components stay focused on orchestration.
mobile/{domain}.A community plugin library is planned for this website. Catalog submissions, compatibility rules, and distribution are not available yet.
The consolidated architecture specification is the canonical reference; older documents may describe superseded structures.
Read the architecture specificationUseful contributions include reproducible bug reports, field-workflow feedback, documentation fixes, tests, and focused code changes.
Open a GitHub issue with the app version or commit, environment, steps to reproduce, expected behavior, and actual behavior. Include sanitized screenshots or logs, never employee data or credentials.
Describe the jobsite problem first: who is affected, what they do today, and what success would look like. Search existing issues before creating a new one. Discuss large changes before implementing them.
Read the repository's contributor instructions, keep changes scoped to the owning domain, add or update tests, and link the related issue. Explain what changed and how you verified it.
Do not publish exploit details or sensitive data in a public issue. Use the repository's private vulnerability reporting option if enabled, or an established private maintainer contact. A security policy should be published before launch.
GitHub Issues is the recommended starting point for bugs, feature requests, documentation, and maintenance work. The following is a proposed workflow, not a claim that these tools are already configured.
Use structured bug and feature forms. Label by type, domain, and priority. Keep one actionable item per issue.
Start with Backlog, Ready, In progress, In review, and Done. Add a target release only when work is committed.
Group issues into small release milestones. Tag releases and publish notes, known issues, and install instructions.
If enabled, use Discussions for questions and open-ended ideas. Move accepted work into an issue.
Before launch, confirm the open-source license and dependency redistribution rights, add contribution and security policies, and identify supported versions. A license field in a package manifest is not a substitute for a reviewed repository license.