Skip to content

Mesh is a local-first mesh network that enables public communication without internet access. 🌐 Set up your Raspberry Pi with ease using Ansible and join a resilient, decentralized infrastructure for sharing and connecting. πŸ’»

Notifications You must be signed in to change notification settings

Shyamshukla26/mesh

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

46 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🌐 Mesh Network: Local-First Communication

Mesh Network

Welcome to the Mesh repository! This project aims to create a local-first mesh network for public communication. With this setup, you can connect devices without relying on the internet. It empowers communities by enabling offline communication through peer-to-peer connections.

Table of Contents

Introduction

In today's world, internet connectivity is often taken for granted. However, many regions face connectivity issues or lack internet access altogether. The Mesh project addresses this challenge by creating a decentralized communication network that operates locally. This approach ensures that communities can stay connected, share information, and collaborate effectively.

Features

  • Local-First: Operates without internet access.
  • Decentralized: No single point of failure.
  • Peer-to-Peer: Direct communication between devices.
  • Community-Focused: Designed for public infrastructure.
  • Supports Raspberry Pi: Utilize affordable hardware for setup.
  • Docker Support: Simplifies deployment and management.
  • Offline Capabilities: Reliable communication even in remote areas.

Technologies Used

This project utilizes a range of technologies to create a robust mesh network:

  • Ansible: For configuration management and deployment.
  • Docker: To containerize applications and ensure consistent environments.
  • Raspberry Pi: Affordable hardware for building mesh nodes.
  • WiFi: The primary medium for communication between devices.

Getting Started

To get started with the Mesh project, follow these steps:

  1. Clone the Repository: Use the command below to clone the repository to your local machine.

    git clone https://github.com/Shyamshukla26/mesh.git
    cd mesh
  2. Download Releases: Visit the Releases section to download the latest release. Follow the instructions provided there to execute the files.

  3. Set Up Your Environment: Ensure you have Docker and Ansible installed on your machine. You can follow the official documentation for installation instructions.

  4. Configure Your Network: Use the provided Ansible playbooks to set up your mesh network. Adjust configurations as needed to fit your local environment.

Usage

Once you have set up your mesh network, you can start using it for various applications. Here are some ideas:

  • Community Announcements: Share important news and updates with your local community.
  • Collaborative Projects: Work together on projects without needing an internet connection.
  • Emergency Communication: Maintain communication during outages or emergencies.

Example Commands

To start a node in your mesh network, use the following command:

docker run -d --network=host your-mesh-image

Make sure to replace your-mesh-image with the actual image name.

Contributing

We welcome contributions to the Mesh project! If you'd like to contribute, please follow these steps:

  1. Fork the Repository: Click the "Fork" button at the top right of the page.
  2. Create a Branch: Use the command below to create a new branch for your feature or fix.
    git checkout -b feature/your-feature-name
  3. Make Changes: Implement your changes and commit them.
    git commit -m "Add your message here"
  4. Push to Your Fork: Push your changes to your forked repository.
    git push origin feature/your-feature-name
  5. Create a Pull Request: Go to the original repository and click on "New Pull Request."

License

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

Contact

For any questions or feedback, please reach out:


We encourage you to explore the Releases section for the latest updates and improvements. Your contributions and feedback will help us build a better mesh network for everyone!

About

Mesh is a local-first mesh network that enables public communication without internet access. 🌐 Set up your Raspberry Pi with ease using Ansible and join a resilient, decentralized infrastructure for sharing and connecting. πŸ’»

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •