A project tracker for decentralized social media platforms, clients, and tools
1# Social Meshes 2 3A comprehensive directory and discovery platform for decentralized social networking projects, clients, and tools across multiple protocols including AT Protocol and ActivityPub. It provides an interface for browsing, searching, and filtering across the two major federated/decentralized networks. 4 5**Live at: https://socialmeshes.com** 6 7![Social Meshes App Screenshot](public/app_screenshot/app-screenshot.png) 8 9Most of this code is written by Claude. If you see anywhere you wish to contribute feel free to open a PR! If you see any project data that needs to be changed or you are a project owner and wish for a description / owner to be changed feel free to submit PR's! 10 11 12## Project Structure 13 14``` 15socialmeshes-app/ 16├── public/ 17│ ├── data/ 18│ │ └── projects.json # Project database 19│ └── logos/ # Project logo images 20├── src/ 21│ ├── components/ # React components 22│ │ ├── TopBar.tsx # Navigation and network selector 23│ │ ├── FilterToolbar.tsx # Search and filter controls 24│ │ ├── ProjectGrid.tsx # Grid layout for projects 25│ │ └── ProjectCard.tsx # Individual project cards 26│ ├── types/ 27│ │ └── project.ts # TypeScript type definitions 28│ ├── utils/ 29│ │ └── projectUtils.ts # Filtering and sorting logic 30│ ├── App.tsx # Main application component 31│ └── main.tsx # Application entry point 32└── package.json # Dependencies and scripts 33``` 34 35## Getting Started 36 37### Prerequisites 38 39- Node.js 18+ and npm 40 41### Installation 42 431. Clone the repository: 44```bash 45git clone https://tangled.sh/@bretton.dev/socialmeshes-app 46cd socialmeshes-app 47``` 48 492. Install dependencies: 50```bash 51npm install 52``` 53 543. Start the development server: 55```bash 56npm run dev 57``` 58 594. Open your browser and navigate to `http://localhost:5173` 60 61### Available Scripts 62 63- `npm run dev` - Start the development server 64- `npm run build` - Build for production 65- `npm run preview` - Preview the production build 66- `npm run lint` - Run ESLint for code quality 67 68 69## Contributing 70 71Contributions are welcome! To add a new project to the directory: 72 731. Add the project data to `public/data/projects.json` 742. Add the project logo to `public/logos/` (preferably SVG or optimized PNG) 753. Submit a pull request 76 77## License 78 79This project is open source. Please check the repository for license details.