{"id":23235732,"url":"https://github.com/anerishah2610/new_chat","last_synced_at":"2026-04-24T16:32:09.104Z","repository":{"id":230661710,"uuid":"170693052","full_name":"AneriShah2610/new_chat","owner":"AneriShah2610","description":null,"archived":false,"fork":false,"pushed_at":"2019-03-08T04:35:07.000Z","size":459,"stargazers_count":4,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-05T20:35:42.365Z","etag":null,"topics":["cockroachdb","dataloader","golang","gorilla-mux","gqlgen","graphql","subscription","websocket"],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AneriShah2610.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2019-02-14T13:10:44.000Z","updated_at":"2019-11-01T05:11:05.000Z","dependencies_parsed_at":"2024-03-31T06:40:29.617Z","dependency_job_id":"25e0ea82-e98c-441b-84dc-c34d26dc350f","html_url":"https://github.com/AneriShah2610/new_chat","commit_stats":null,"previous_names":["anerishah2610/new_chat"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/AneriShah2610/new_chat","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AneriShah2610%2Fnew_chat","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AneriShah2610%2Fnew_chat/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AneriShah2610%2Fnew_chat/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AneriShah2610%2Fnew_chat/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AneriShah2610","download_url":"https://codeload.github.com/AneriShah2610/new_chat/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AneriShah2610%2Fnew_chat/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32230915,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-24T13:21:15.438Z","status":"ssl_error","status_checked_at":"2026-04-24T13:21:15.005Z","response_time":64,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cockroachdb","dataloader","golang","gorilla-mux","gqlgen","graphql","subscription","websocket"],"created_at":"2024-12-19T03:29:21.791Z","updated_at":"2026-04-24T16:32:09.089Z","avatar_url":"https://github.com/AneriShah2610.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Chat Prototype\n\u003e Chat prototype using Golang\n\n## Prerequisite\n\n1. [Install golang](https://golang.org/dl/)[Here, code base on go 1.11 version]\n2. Setup GOPATH [Link1](https://golang.org/doc/code.html#GOPATH) and [Link2](https://github.com/golang/go/wiki/GOPATH)\n3. [Install cockroachdb](https://www.cockroachlabs.com/docs/stable/install-cockroachdb-windows.html)\n4. Check Binary file of cockroachdb : `.\\cockroach.exe` run in cmd\n5. Start node in cockroachdb : `cockroach start --insecure` run in cmd where cockroachdb is intalled\n6. [Install Glide](https://github.com/Masterminds/glide)\n\n## Package used\n\n1. github.com/gorilla/mux  = As router carry handler request\n2. github.com/lib/pq       = For cockroachdb\n3. github.com/gorilla/websocket = For handling socket \n4. github.com/99designs/gqlgen = Graphql library \n5. github.com/99designs/gqlgen/handler\n6. github.com/99designs/gqlgen/graphql = For directive\n\n## Getting Stared\n\n1. Clone the repo under `$GOPATH/src/zuru.tech`.If does nt exist than first create it.Then run `git clone https://github.com/AneriShah2610/new_chat.git`\n2. Run `glide install`(gqlgen version 0.7.2)\n3. Test cockroachdb cluster: `cockroach sql --insecure` run in cmd where cockroachdb is insalled\n4. Create Database: `create database chat_tets if not exist`\n5. Add dbScript in database.Find [docs](https://github.com/AneriShah2610/new_chat/tree/master/dbScript) for dbScript\n6. Run `go run cmd/mian.go`\n7. Open `https://localhost:8585/` for GraphQL Playground\n\n\n## Folder structure of server side\n\n        |--- api\n        |     |--- dal\n        |     |     |-- db_config.json        \n        |     |     |-- connection.go       \n        |     |     |-- db_config.go         \n        |     |--- directive\n        |     |     |-- directive.go        \n        |     |--- handler\n        |     |     |-- resolver.go        \n        |     |     |-- user_handler.go\n        |     |     |-- chatroom_handler.go\n        |     |     |-- members_handler.go\n        |     |     |-- chatconversation_handler.go\n        |     |--- helper\n        |     |     |-- helpers.go\n        |     |--- middleware\n        |     |     |-- middlewares.go\n        |--- cmd\n        |     |-- main.go\n        |--- dbScript\n        |     |-- db_init.sql\n        |--- error\n        |     |- error.go\n        |--- graph\n        |     |-- generated.go\n        |--- model\n        |     |-- models.go       \n        |--- apimethods.md\n        |--- glide.lock\n        |--- glide.yml\n        |--- gqlgen.yml\n        |--- README.md                  \n        |--- schema.graphql \n        |--- schema.md  \n        |--- todo.txt      \n        |--- WholechatReadme.md  \n\n## Database \n\n- Create tables as per configuration. \n    [You can find my database configuration file here](https://github.com/AneriShah2610/new_chat/blob/master/api/dal/db_config.json)\n- Read doc to generate tables \n    [doc](https://github.com/AneriShah2610/new_chat/blob/master/dbScript/db_init.sql)\n- Change configuration as per your db \n\n### Chat Prototype API features \n- [Api Functionality](https://github.com/AneriShah2610/new_chat/blob/master/apimethods.md)\n\n#### Add API features\n\n1. Alter desire changes in `schema.graphql` file and create appropriate models under `api/model` package\n2. Also update `gqlgen.yml` file to add new model mapping\n3. Run `gqlgen`\n4. Implement new resolvers in `api/handler` package \n\n#### Schema\n- [Schema Docs](https://github.com/AneriShah2610/new_chat/blob/master/schema.md) - generated using [graphql-markdown](https://www.npmjs.com/package/graphql-markdown)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanerishah2610%2Fnew_chat","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fanerishah2610%2Fnew_chat","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanerishah2610%2Fnew_chat/lists"}