Overview
BuildArc is a proof of concept (PoC) for a construction drawing management system. It serves as a lightweight alternative to off-the-shelf solutions like ACC Build, Procore, and Fieldwire.
This PoC includes features such as:
- Drawing Catalog Management
- Detailed Annotation and Collaboration
- Offline Mode with Sync Support
The system leverages Firestore as the backend database, providing robust offline capabilities and seamless synchronization across devices.
These instructions assume you are a senior developer familiar with essential tools and workflows. For example, before cloning the repository, ensure your GitHub public key is added. If you're unsure about generating or adding SSH keys, consult resources like Google or GPT.
- Visit the repository on GitHub:
BuildArc Repository - Clone the repository using SSH (preferred):
git clone git@github.com:ripplearc/buildarc.git
- Note: The clone process may take time, as it includes files for the Firebase Storage Emulator.
Make sure the following dependencies are installed:
- CocoaPods (for iOS development):
brew install cocoapods
- Flutter SDK:
Follow the official Flutter installation guide for your platform. - Firebase Tools:
Install globally via npm:npm install -g firebase-tools
- Login to Firebase:
** Note: This is your own Firebase account and credentials, not the one listed at the bottom. **
firebase login- Initialize Firebase in the Project:
From the project directory:firebase init
- When prompted for emulator option, select the following tools:
- Authentication
- Firestore
- Storage
- Hosting
- After setup, discard any changes made to
firebase.json
- When prompted for emulator option, select the following tools:
-
Add the following shortcut to your terminal configuration file (e.g.,
.zshrcor.bashrc):alias start_firebase_emulator='firebase emulators:start --import=.firebase/emulator/export --export-on-exit'
- This ensures a smoother workflow for starting the emulator.
-
Reload your terminal configuration:
source ~/.zshrc
-
Start the Firebase Emulator:
start_firebase_emulator
-
Open the Emulator UI to browse Firestore or Storage content.
-
Run the Flutter app:
flutter run
-
Select Chrome when prompted to choose a device.
- Credentials:
- Username:
construculator@gmail.com - Password:
123456
- Username: