Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/aa-nadim/cat-connect
CatConnect is a social media platform tailored for cat enthusiasts. The platform allows users to share, explore, and interact with adorable cat content. Users can react to cat posts, read detailed profiles and stories about individual cats, and connect with like-minded cat lovers.
https://github.com/aa-nadim/cat-connect
beego beego-framework bootstrap go golang vanilla-javascript
Last synced: 5 days ago
JSON representation
CatConnect is a social media platform tailored for cat enthusiasts. The platform allows users to share, explore, and interact with adorable cat content. Users can react to cat posts, read detailed profiles and stories about individual cats, and connect with like-minded cat lovers.
- Host: GitHub
- URL: https://github.com/aa-nadim/cat-connect
- Owner: aa-nadim
- Created: 2024-12-18T18:16:58.000Z (16 days ago)
- Default Branch: main
- Last Pushed: 2024-12-25T21:00:12.000Z (8 days ago)
- Last Synced: 2024-12-25T21:24:16.752Z (8 days ago)
- Topics: beego, beego-framework, bootstrap, go, golang, vanilla-javascript
- Language: Go
- Homepage:
- Size: 223 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Support: SUPPORT/Install Beego.txt
Awesome Lists containing this project
README
# CatConnect
This project is a web application that integrates with The CatAPI to display cat images and information. The application uses `Go channels` for making API calls to The CatAPI. This allows for efficient, non-blocking operations when fetching cat data.
## Features
- Browse cat images from The Cat API
- Filter cats by breed
- View detailed information about each cat
- Add cats to favorites
- View all favorite cats
- Vote and unvote for cats
- Responsive design for various screen sizes## Prerequisites
Before you begin, ensure you have met the following requirements:
- Go (version 1.16 or later)
- Git## Installation
1. **Install Dependencies:**
Ensure you have Go installed, along with the Beego CLI tool (`bee`). If you don't have `bee` installed, you can do so with:```bash
go install github.com/beego/bee/v2@latest
```
For Linux:
```bash
echo "export PATH=\$PATH:\$(go env GOPATH)/bin" >> ~/.bashrc
source ~/.bashrc
```
make directory
```bash
mkdir -p ~/go/src/ "Windows===> mkdir C:\Users\Your_User_Name\go\src\"
cd ~/go/src/ "Windows===> cd C:\Users\Your_User_Name\go\src\"
```Then, install project dependencies:
```bash
go mod tidy
```2. **Clone the Repository:**
```bash
git clone https://github.com/aa-nadim/cat-connect.git
cd cat-connect
```3. **Set up your configuration:**
Create a `conf/app.conf` file in your project root with the following content:```
appname = cat-connect
httpport = PORT ADDRESS
runmode = dev
cat_api_key = YOUR_CAT_API_KEY_HERE
StaticDir = static:static
```Replace `YOUR_CAT_API_KEY_HERE` with the API key you received from The Cat API.
4. **Generating an API Key**
To use The Cat API, you need to generate an API key:
1. Visit
2. Click on the "GET YOUR API KEY" button
3. Fill out the registration form with your email address
4. Check your email for a message from The Cat API containing your API key
5. Copy this API key and add it to your `conf/app.conf` file5. **Run the Application:**
```bash
go mod tidy
bee run
```
6. Open your browser and navigate to `http://localhost:8080/`## Unit Tests
```bash
# Run unit tests with coverage
go test ./... -coverprofile=coverage.out# Display total coverage percentage
go tool cover -func=coverage.out | grep total: | awk '{print $3}'# Generate an HTML coverage report
go tool cover -html=coverage.out -o coverage.html
open coverage.html```