{"id":18527388,"url":"https://github.com/eric-guo/wechat-starter","last_synced_at":"2025-11-03T16:47:00.247Z","repository":{"id":3804759,"uuid":"50936739","full_name":"Eric-Guo/wechat-starter","owner":"Eric-Guo","description":"WeChat web app with wx_pay in rails","archived":false,"fork":false,"pushed_at":"2025-02-18T04:26:18.000Z","size":302,"stargazers_count":350,"open_issues_count":11,"forks_count":69,"subscribers_count":17,"default_branch":"master","last_synced_at":"2025-04-01T23:37:14.199Z","etag":null,"topics":["rails","wechat"],"latest_commit_sha":null,"homepage":"","language":"Ruby","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/Eric-Guo.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,"publiccode":null,"codemeta":null}},"created_at":"2016-02-02T17:04:18.000Z","updated_at":"2025-02-25T14:40:27.000Z","dependencies_parsed_at":"2024-01-31T08:29:48.840Z","dependency_job_id":"eb596c49-769b-4195-92f5-4a278fdc997b","html_url":"https://github.com/Eric-Guo/wechat-starter","commit_stats":{"total_commits":308,"total_committers":9,"mean_commits":34.22222222222222,"dds":0.5422077922077921,"last_synced_commit":"da502943d7459708f8a6df0d09f26042019e51ae"},"previous_names":["goofansu/wechat-starter"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Eric-Guo%2Fwechat-starter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Eric-Guo%2Fwechat-starter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Eric-Guo%2Fwechat-starter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Eric-Guo%2Fwechat-starter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Eric-Guo","download_url":"https://codeload.github.com/Eric-Guo/wechat-starter/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247856541,"owners_count":21007620,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["rails","wechat"],"created_at":"2024-11-06T17:55:01.896Z","updated_at":"2025-11-03T16:47:00.190Z","avatar_url":"https://github.com/Eric-Guo.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# wechat-starter\n\n[![Build Status][travis-badge]][travis]\n[![Code Climate](https://codeclimate.com/github/Eric-Guo/wechat-starter/badges/gpa.svg)](https://codeclimate.com/github/Eric-Guo/wechat-starter)\n\nTemplate for developing wechat in rails.\n\n### Features\n\n* Process messages with [Eric-Guo/wechat](https://github.com/Eric-Guo/wechat)\n\n* UI library using [weui](https://github.com/weui/weui) with [weui-rails](https://github.com/Eric-Guo/weui-rails)\n\n* Pay with [jasl/wx_pay](https://github.com/jasl/wx_pay)\n\n* OAuth2 with [skinnyworm/omniauth-wechat-oauth2](https://github.com/skinnyworm/omniauth-wechat-oauth2)\n\n### Screenshots\n\n\u003cimg src=\"http://i.imgur.com/WimbzPX.png\" width=\"240\"\u003e\n\u003cimg src=\"http://i.imgur.com/urwmWZv.png\" width=\"240\"\u003e\n\u003cimg src=\"http://i.imgur.com/UPw6FRc.png\" width=\"240\"\u003e\n\n### Demo\n\n\u003cimg src=\"http://onrroy52y.bkt.clouddn.com/20170410223715_TvCyRq_1491834768.jpeg\"\u003e\n\nService account sponsored by [Le Wagon Shanghai](https://www.lewagon.com/shanghai)\n\n# Install\n\n### See wiki first\n\n* [Wiki](https://github.com/Eric-Guo/wechat-starter/wiki)\n\n### Deploy to Heroku\n\n[![Deploy](https://www.herokucdn.com/deploy/button.svg)](https://heroku.com/deploy)\n\n### Deploy to your own server\n\n* Requirements\n\n    * PostgreSQL\n\n    * Configure \"服务器地址\" as `http://your-domain.com/wechat`\n\n    * Configure \"测试授权目录\" as `http://your-domain.com/`\n\n* Install\n\n    * Create your new project and add this repo as template\n\n        ``` bash\n        mkdir your_app\n        cd your_app\n        git init\n        git remote add template https://github.com/Eric-Guo/wechat-starter.git\n        git fetch template\n        git checkout -b master template/master\n        bundle install\n        rake db:create\n        rake db:migrate\n        ```\n\n    * Create `config/application.yml` and config following information:\n\n        ``` yaml\n        wechat_app_id: \"AppID\"\n        wechat_secret: \"AppSecret\"\n        wechat_token:  \"Token\"\n        wechat_encoding_aes_key: \"EncodingAESKey\"\n        wechat_trusted_domain_fullname: \"http://your_dev.proxy.qqbrowser.cc\"\n\n        # following is optional if you don't need wechat pay\n        wechat_pay_mch_id: \"merchant id\"\n        wechat_pay_api_key: \"32 bits api key configured in pay.weixin.qq.com\"\n        wechat_pay_notify_url: \"url to accept pay result notification\"\n        ```\n\n    * Start server\n\n        `puma -C config/puma.rb`\n\n# Create customized menu\n\nIt depends on `Rails.env` to choose the menu from config folder.\n\nFor example, if `Rails.env == production`, then `config/menu_production.yaml` is chosed.\n\n``` bash\n# create menu\nrake wechat:menu_create\n\n# show menu\nrake wechat:menu\n```\n\n# References\n\n* [omniauth with devise](https://github.com/plataformatec/devise/wiki/OmniAuth:-Overview)\n* [sorcery-weixin](https://github.com/goofansu/sorcery-weixin)\n\n# Extension projects\n\n* [rails authentication system](https://github.com/frankgu/rails_authentication_system)\n    - wechat omniauth only login\n    - requires phone and email to login the system\n    - phone confirmation service using yunpian\n    - I18n internationalization (default locale is zh-CN)\n    - rpsec test and simplecov test coverage (97.2% LOC covered)\n\n# Contributors\n\n* [goofansu](https://github.com/goofansu)\n* [Eric-Guo](https://github.com/Eric-Guo)\n* [Frankgu](https://github.com/frankgu)\n\n[travis-badge]: https://travis-ci.org/Eric-Guo/wechat-starter.svg\n[travis]: https://travis-ci.org/Eric-Guo/wechat-starter\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feric-guo%2Fwechat-starter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feric-guo%2Fwechat-starter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feric-guo%2Fwechat-starter/lists"}