https://github.com/imbios/go-micho-twitter
Twitter-like API written in Go, using Echo framework.
https://github.com/imbios/go-micho-twitter
echo echo-framework go golang twitter-api
Last synced: about 1 year ago
JSON representation
Twitter-like API written in Go, using Echo framework.
- Host: GitHub
- URL: https://github.com/imbios/go-micho-twitter
- Owner: ImBIOS
- Created: 2022-11-02T10:22:12.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2023-04-29T10:51:19.000Z (about 3 years ago)
- Last Synced: 2025-03-24T08:22:43.722Z (about 1 year ago)
- Topics: echo, echo-framework, go, golang, twitter-api
- Language: Go
- Homepage:
- Size: 8.14 MB
- Stars: 8
- Watchers: 3
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Twitter API with Go ð
Twitter-like API with Go, using [Echo](https://github.com/labstack/echo) and [Go-Micro](https://github.com/go-micro/go-micro) framework.
## Features ðŠķ
- [x] Authentication
- [x] Sign up
- [x] Sign in
- [ ] Follow System
- [x] Follow
- [ ] Unfollow
- [x] Public Tweet
- [x] Send Tweet
- [x] Feed
- [ ] Private Message
- [ ] Send Message
- [ ] View Private Message
- [ ] User Profile
- [ ] View Profile
- [ ] Edit Profile
- [ ] Search
- [ ] Security
- [ ] JWT
- [x] Access Token
- [ ] Refresh Token
- [ ] Rate Limiting
- [x] CORS
- [ ] DevOps
- [ ] Docker
- [ ] Kubernetes
- [x] Continuous Integration
- [ ] Containerized Development
- [x] Echo Framework for API
- [x] Authentication
- [x] Middleware
- [x] Routing
- [x] Validation
- [ ] Go-Micro Framework for Microservices
## Tools âïļ
- Dev Watcher => [Air](https://github.com/cosmtrek/air)
- Linter => [GolangCI-Lint](https://github.com/golangci/golangci-lint)
- Code Formatter => [Golines](https://github.com/segmentio/golines)
## VSCode Extension ðū
- [Run on Save](https://marketplace.visualstudio.com/items?itemName=emeraldwalk.RunOnSave)
## Project Structure ð
```bash
TODO:
```
- **.vscode** => TODO:
- **configs** => TODO:
- **controllers** => TODO:
- **helpers** => TODO:
- **models** => TODO:
- **routes** => TODO:
## Get Started ð
1. Create a MongoDB database, and name it `twitter`
2. Copy the example environment variable (`.env.example`) to `.env`
```bash
cp .env.example .env
```
3. Configure the `.env` file
4. Make sure Go (min v1.18) and [Air](https://github.com/cosmtrek/air) installed.
5. Run the Air ðŦ
```bash
air
```