A modern social media platform for sharing photos and connecting with others. Built with Go backend and Vue.js frontend.
- πΈ Photo sharing and discovery
- π€ User profiles and following system
- β€οΈ Like and interact with posts
- π¬ Comment on shared content
- π Explore feed with trending photos
- π± Responsive design for mobile and desktop
- Go with modular architecture
- RESTful API design
- SQLite database
- JWT authentication
- Vue.js with Bootstrap
- Feather icons
- Modern dashboard interface
- NPM build system
- Go 1.x
- Node.js (LTS version)
- NPM
git clone [your-repo-url]
go build ./cmd/webapi/ ./webapi
./open-npm.sh
npm install npm run dev
./open-npm.sh npm run build-embed exit
go build -tags webui ./cmd/webapi/
βββ cmd/ β βββ webapi/ # Main web server β βββ healthcheck/ # Health monitoring βββ service/ β βββ api/ # API implementation β βββ globaltime/ # Time utilities βββ webui/ # Vue.js frontend βββ doc/ # API documentation
- OpenAPI specification in
doc/api.yaml
- RESTful endpoints for user and photo operations
- Comprehensive authentication system
- Intuitive photo upload interface
- Interactive feed with infinite scroll
- User profile customization
- Real-time notifications
- Mobile-first responsive design
- JWT-based authentication
- Secure file handling
- Input validation
- CORS protection
- Photo upload and management
- User following system
- Activity feed
- Like and comment system
- User profiles
- Content discovery
go test ./...
npm run test
go run ./cmd/webapi/
go run ./cmd/webapi/ -config path/to/config.yaml
npm run dev
npm run build-embed
npm run preview
- Fork the repository
- Create your feature branch
- Commit your changes
- Push to the branch
- Open a Pull Request
For Apple M1/M2 users: If encountering esbuild issues, run: ./open-npm.sh npm install exit
See LICENSE file for details.