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 5Most 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! 6 7This is a work in progress and not yet hosted anywhere. 8 9 10## Project Structure 11 12``` 13socialmeshes-app/ 14├── public/ 15│ ├── data/ 16│ │ └── projects.json # Project database 17│ └── logos/ # Project logo images 18├── src/ 19│ ├── components/ # React components 20│ │ ├── TopBar.tsx # Navigation and network selector 21│ │ ├── FilterToolbar.tsx # Search and filter controls 22│ │ ├── ProjectGrid.tsx # Grid layout for projects 23│ │ └── ProjectCard.tsx # Individual project cards 24│ ├── types/ 25│ │ └── project.ts # TypeScript type definitions 26│ ├── utils/ 27│ │ └── projectUtils.ts # Filtering and sorting logic 28│ ├── App.tsx # Main application component 29│ └── main.tsx # Application entry point 30└── package.json # Dependencies and scripts 31``` 32 33## Getting Started 34 35### Prerequisites 36 37- Node.js 18+ and npm 38 39### Installation 40 411. Clone the repository: 42```bash 43git clone https://tangled.sh/@bretton.dev/socialmeshes-app 44cd socialmeshes-app 45``` 46 472. Install dependencies: 48```bash 49npm install 50``` 51 523. Start the development server: 53```bash 54npm run dev 55``` 56 574. Open your browser and navigate to `http://localhost:5173` 58 59### Available Scripts 60 61- `npm run dev` - Start the development server 62- `npm run build` - Build for production 63- `npm run preview` - Preview the production build 64- `npm run lint` - Run ESLint for code quality 65 66 67## Contributing 68 69Contributions are welcome! To add a new project to the directory: 70 711. Add the project data to `public/data/projects.json` 722. Add the project logo to `public/logos/` (preferably SVG or optimized PNG) 733. Submit a pull request 74 75## License 76 77This project is open source. Please check the repository for license details.