SiteSurveyor is an open-source land surveying software developed by Eineva Inc. Designed specifically for regions with limited internet connectivity, SiteSurveyor provides offline functionality, secure data storage, and automated processing for professional surveyors, government agencies, and educational institutions. Supported on mobile (iOS and Android), desktop, and web platforms, SiteSurveyor makes surveying more accessible, efficient, and accurate.
- Cross-Platform Support: Compatible with Android, iOS, desktop, and web.
- Offline Capability: Collect and store data offline with auto-sync once reconnected to the internet.
- Automated Data Processing: Automated calculations for slope, volume, elevation, and more.
- Secure Data Management: Data encryption, role-based access, and secure cloud storage.
- Multi-Format Export: Export reports in PDF, CSV, DXF, and DWG formats.
- Collaborative Development: Contributions from surveyors and developers worldwide.
These instructions will help you get a copy of the project up and running on your local machine for development and testing purposes.
- Node.js (for frontend and mobile development): Install Node.js
- Python (for backend development): Install Python
- PostgreSQL (database): Install PostgreSQL
- Git: Install Git
-
Clone the repository:
git clone https://github.com/YourUsername/SiteSurveyor.git cd SiteSurveyor/backend
-
Install Python dependencies:
pip install -r requirements.txt
-
Configure the PostgreSQL database (update database credentials in
settings.py
), then migrate:python manage.py migrate
-
Run the server:
python manage.py runserver
-
Navigate to the
frontend
directory:cd ../frontend
-
Install dependencies and start the development server:
npm install npm start
-
Navigate to the
mobile
directory:cd ../mobile
-
Install dependencies:
npm install
-
Start the mobile app:
npm run start
- Desktop/Web: Navigate to the frontend URL displayed in the terminal after running the frontend server.
- Mobile: Use the Expo Go app (for development) to scan the QR code generated after starting the mobile app.
- Backend API: Visit
http://127.0.0.1:8000
to access the Django backend API.
For more detailed usage instructions, please refer to the User Guide in the docs
folder.
- Backend: Django, Django REST Framework, PostgreSQL
- Frontend: React, Redux, Axios
- Mobile: React Native, Watermelon DB (for offline data)
- Data Synchronization: Watermelon DB, PostgreSQL
- Security: Data encryption, user authentication
We welcome contributions from developers and surveyors to help improve SiteSurveyor!
To contribute:
- Fork the repository.
- Create a new branch (
git checkout -b feature/YourFeature
). - Commit your changes (
git commit -m 'Add a feature'
). - Push to the branch (
git push origin feature/YourFeature
). - Open a pull request, describing your changes in detail.
Please read our CONTRIBUTING.md for more details on our code of conduct, coding style, and development workflow.
This project is licensed under the Mozilla Public License 2.0 - see the LICENSE file for details.
Eineva Inc.
- Email: admin@eineva.co.zw
- Website: https://eineva.co.zw
For questions or feedback, please open an issue or contact us directly.
Thank you for being part of the SiteSurveyor community!