MCPcopy Index your code
hub / github.com/GuGoOrg/GuGoTik

github.com/GuGoOrg/GuGoTik @2.0.1

Chat with this repo
repository ↗ · DeepWiki ↗ · release 2.0.1 ↗ · + Follow
1,402 symbols 3,301 edges 121 files 153 documented · 11%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

GuGoTik

GIVE US A STAR PLEASE MY SIR !!! | 请给我们一个 Star 求求了 !!!
Visitors

GuGoTik is sixth practice project of ByteDance campus, themed of a micro TikTok backend.

If you want to learn more information, please wait util the competition finished. GuGoTik will provide the whole develop document, please give us a star~

English | 简体中文

Contributor

Project Developer: This is a group of Contributors from all over the world, from WHU, HNU, NJUPT.
- EpicMo - Maples - Attacks - amazing-compass - XFFFCCCC

Special Thanks: - Eric - Huang Yongliang - nicognaW

And the friends who can not participle in our development due to the personal things: - Chuanwise

File structure

  • docker: Built as basic image for project's dockerfile or kubernetes's basic infrastructure.
  • scripts: Build scripts
  • src: The source of the project
    • constant: The project constant
    • extra: The service being relied upon
    • idl: idl
    • models: Data model
    • rpc: Rpc code
    • services: Micro services instance
    • storage: About storage
    • utils: Utils code
    • web: Gateway code
  • test: Test of the project
  • Others:Docker Compose file and demo env

Extern service

  • Redis (Cluster)
  • PostgreSQL
  • Consul
  • OpenTelemetry Collector
  • FFMpeg
  • Go

Recommend: - Jaeger - Victoria Metrics - Grafana

Profile Analysis: - Pyroscope

Build process

RyzeBot of 梦想珈 will build image and push to kubernetes
The PR to Dev branch can be merged into the Master branch after the Action based UnitTest + Code Analysis + Lint + BuildCheck.
The Master branch will automatically trigger the CD, build the image and push it, and RyzeBot will complete the push to K8S for automatic deployment.

Config

GuGoTik can automatically capture environement variables or provide them manually as .env files in the order of coverage:
.Env > environement variable > DefaultEnv > EmptyEnv (that is, null value is provided by default, and runtime special judgment is provided by GuGoTik)

Build

Standalone

Run the build-all script in the scripts folder, and then run the run-all script. Please select the script supported by your platform.

Docker

docker pull epicmo/gugotik:latest

After entering the container through the interactive end point, run the programs under the GateWay folder and the Services folder by yourself

Docker-Compose

Run in the project root directory:
Note: The relevant account password settings are viewed in the .env.docker.compose file

docker compose up -d

Extension points exported contracts — how you extend this code

Core symbols most depended-on inside this repo

SetSpanError
called by 221
src/utils/logging/logging.go
LogService
called by 106
src/utils/logging/logging.go
Start
called by 102
src/storage/cached/ticker.go
SetSpanWithHostname
called by 76
src/utils/logging/logging.go
Render
called by 43
src/web/utils/json.go
request
called by 36
src/extra/gorse/client.go
failOnError
called by 16
src/services/msgconsumer/main.go
RegisterConsul
called by 13
src/utils/consul/register.go

Shape

Method 848
Function 332
Struct 183
Interface 35
TypeAlias 4

Languages

Go100%
TypeScript1%

Modules by API surface

src/rpc/relation/relation.pb.go120 symbols
src/rpc/favorite/favorite.pb.go104 symbols
src/rpc/feed/feed.pb.go87 symbols
src/rpc/comment/comment.pb.go82 symbols
src/rpc/auth/auth.pb.go56 symbols
src/rpc/user/user.pb.go54 symbols
src/rpc/publish/publish.pb.go54 symbols
src/rpc/chat/chat.pb.go51 symbols
src/rpc/relation/relation_grpc.pb.go50 symbols
src/extra/gorse/client.go46 symbols
src/rpc/favorite/favorite_grpc.pb.go40 symbols
src/rpc/recommend/recommand.pb.go38 symbols

Datastores touched

(mongodb)Database · 1 repos
(mysql)Database · 1 repos
gorseDatabase · 1 repos
gugodbDatabase · 1 repos
mydbDatabase · 1 repos

For agents

$ claude mcp add GuGoTik \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact