Simon-157 / connecto

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Connecto App

Overview

Connecto is a mobile application designed to bridge the gap between Ghanaian students seeking valuable learning experiences and professionals eager to share their expertise. The app provides mentorship, internships, and connections to potential employers in the Ghanaian market.

Table of Contents

Features

  • User Authentication and Profile Customization
  • Candidates and Professionals Connection Management
  • In-app Chat Communication
  • Media Integration for Images and Videos
  • Update Notifications
  • Calendar Integration for Scheduled Mentorships or Interviews
  • Geolocation-based Matching
  • Audio Calls for Virtual Recruitment Sessions
  • Feedback and Rating System
  • Mentorship and Job Feeds

Project Structure

connecto_app/
├── android/
├── ios/
├
└── 📁lib
    └── 📁controllers
        └── location_controller.dart
    └── main.dart
    └── 📁models
        └── connection_model.dart
        └── event_model.dart
        └── job_feed_model.dart
        └── media_model.dart
        └── message_model.dart
        └── notification_model.dart
        └── user_model.dart
    └── 📁screens
        └── 📁auth
            └── login_screen.dart
            └── register_screen.dart
        └── 📁explore
            └── location_explore.dart
        └── 📁jobs
            └── job_detail_screen.dart
            └── jobs_feed.dart
        └── 📁onboarding
            └── onboarding_screen.dart
            └── splash_screen.dart
    └── 📁services
        └── auth_service.dart
        └── location_service.dart
    └── 📁shared
        └── bottom_snake_bar.dart
        └── bottom_wrapper.dart
        └── page_navigation.dart
    └── 📁utils
        └── constants.dart
        └── data.dart
    └── 📁widgets
        └── 📁explore
            └── feeds_found_modal.dart
            └── map_widget.dart
        └── 📁jobs
            └── jobcard.dart
            └── jobtag.dart
├── test/
│   ├── unit/
│   ├── widget/
│   └── integration/
├── pubspec.yaml
└── README.md

Getting Started

Prerequisites

  • Flutter SDK: Install Flutter
  • Dart SDK: Comes with Flutter installation
  • Android Studio or Xcode for iOS development

Installation

  1. Clone the repository:

    git clone https://github.com/Simon-157/connecto.git
    cd connecto_app
  2. Install dependencies:

    flutter pub get
  3. Run the app:

    flutter run

Development

Running Tests

To run unit and widget tests:

flutter test

For integration tests:

flutter drive --target=test_driver/app.dart

Branching Strategy

Branch Rule

The main branch is protected and does not allow direct pushes. All changes must be made through pull requests (PRs) and approved by at least one reviewer.

Workflow

  1. Create a Feature Branch: Branch off from main.

    git checkout -b feature/your-feature-name
  2. Make Changes: Commit your changes with clear and concise messages.

    git add .
    git commit -m "Add feature X"
  3. Push to Your Branch:

    git push origin feature/your-feature-name
  4. Create a Pull Request: Go to the repository on GitHub and create a PR against the main branch. Provide a detailed description of your changes.

  5. Code Review: Ensure your PR is reviewed and approved by at least one team member.

  6. Merge: Once approved, your PR will be merged into the main branch by a maintainer.

Contributing

We welcome contributions from the community. To contribute, follow these steps:

  1. Fork the repository.
  2. Clone your forked repository:
    git clone https://github.com/Simon-157/connecto.git
    cd connecto_app
  3. Create a new branch for your feature or bugfix:
    git checkout -b feature/your-feature-name
  4. Make your changes and commit them:
    git commit -m "Description of the changes"
  5. Push your changes to your forked repository:
    git push origin feature/your-feature-name
  6. Create a pull request from your branch to the main branch of the original repository.

Code of Conduct

Please adhere to our Code of Conduct when contributing to this project.

License

This project is licensed under the MIT License. See the LICENSE file for more details.

About


Languages

Language:Dart 83.8%Language:C++ 6.9%Language:CMake 5.3%Language:JavaScript 2.3%Language:Swift 0.9%Language:C 0.4%Language:HTML 0.3%Language:Kotlin 0.0%Language:Objective-C 0.0%