🖖🏻 A self-hosted Quora like web application written in Go

Overview

ui

Guora

go-report codecov go-mod license

🖖🏻 A self-hosted Quora like web application written in Go

基于 Golang 类似知乎的私有部署问答应用 包含问答、评论、点赞、管理后台等功能

Quick Start (Docker Deploy)

$ docker-compose up --build

Development (Non-Dockerized Deploy)

1.Clone Source Code

$ git clone https://github.com/meloalright/guora

$ cd guora

2.Download Requirements

$ go mod download

3.Create Configuration

$ touch /etc/guora/configuration.yaml
# configuration for dev
db:
  driver: sqlite3
  addr: ./guora.db
  # driver: mysql
  # addr: user:password@/dbname?charset=utf8&parseTime=True&loc=Local
  # driver: postgres
  # addr: host=myhost user=gorm dbname=gorm sslmode=disable password=mypassword
redis:
  addr: localhost:6379
  password:
  db: 0
admin:
  name: Development (开发账号)
  mail: mymail
  password: mypassword
secretkey: JustWriteSomethingWhatYouLike
lang: en
#lang: zh
address: :8080
Param Description 备注
db Database configure, supports sqlite3, mysql, postgres 数据库配置: 驱动支持 sqlite3, mysql, postgres
redis Redis configure Redis 配置
admin Administrator info 管理员信息
secretkey Secret string for token signature Token 密钥
lang Languages, such as en, zh 语言: en 为英文; zh 为简体中文
address Listen address 服务监听地址

4.Init and Run

$ (sudo) go run ./cmd/guora -init

5. Visit Website

visit localhost:8080 and log in as admin

mail (默认邮箱) mymail
password (默认密码) mypassword

Run Test

$ (sudo) go test ./cmd/guora

Source

Repository: guora

Author: meloalright

Contributors: contributors

ChangeLog

Documented in Releases

License

MIT

You might also like...
GoTrue is a small open-source API written in Golang, that can act as a self-standing API service for handling user registration and authentication for Jamstack projects.
GoTrue is a small open-source API written in Golang, that can act as a self-standing API service for handling user registration and authentication for Jamstack projects.

GoTrue is a small open-source API written in Golang, that can act as a self-standing API service for handling user registration and authentication for Jamstack projects.

This is my personal website, hosted on GitHub Pages

astrophena.name This is my personal website, hosted on GitHub Pages. Serving locally You need the latest Go and Node.js installed.

Okta Golang Gin & Okta-Hosted Login Page Example

Okta Golang Gin & Okta-Hosted Login Page Example This example shows you how to use the Okta JWT verifier library to login a user to a Golang Gin appli

GoCondor is a golang web framework with an MVC like architecture, it's based on Gin framework
GoCondor is a golang web framework with an MVC like architecture, it's based on Gin framework

GoCondor is a golang web framework with an MVC like architecture, it's based on Gin framework, it features a simple organized directory structure for your next project with a pleasant development experience, made for developing modern APIs and microservices.

A web app that displays a new random famous quote every day (UTC timezone) and allows people to like/unlike the quote

Intro A web app that displays a new random famous quote every day (UTC timezone) and allows people to like/unlike the quote. The app display the curre

This application is used as an example HTTP/SQLite application for Litestream tutorials.

This application is used as an example HTTP/SQLite application for Litestream tutorials. It simply maintains a count of HTTP requests and persists it to a SQLite database.

A simple database application that I was asked to implement as part of a job application process

This is a simple database application that I was asked to implement as part of a job application process. They told me I could choose any languages an

Analytics box a simple and privacy focused analytics tool written in go like google analytics
Analytics box a simple and privacy focused analytics tool written in go like google analytics

Analytics box is analytics tool like google analytics but instead of ripping user's privacy off them like google it respects their privacy and doesn't collect any unnecessary information.

sigurlx a web application attack surface mapping tool.

sigurlx a web application attack surface mapping tool, it does ...:

Comments
  • Setting CreatedAt on updates

    Setting CreatedAt on updates

    https://github.com/meloalright/guora/blob/9e4096bcf6fd6a7840a486bfefb25f9170ce7aaa/model/base.go#L16

    Should this be setting UpdatedAt, instead of CreatedAt?

    Nice work on the project!

    bug 
    opened by cchanningallen 2
Owner
meloalright
meloalright
A self-hosted golang application that listens for Terraform pull request events via webhooks.

Atlantis Terraform Pull Request Automation Resources What is Atlantis? What does it do? Why should you use it? Stargazers over time Resources How to g

null 0 Dec 9, 2021
Remark42 is a self-hosted, lightweight, and simple comment engine

Remark42 is a self-hosted, lightweight, and simple (yet functional) comment engine, which doesn't spy on users. It can be embedded into blogs, articles or any other place where readers add comments.

Umputun 4.1k Dec 28, 2022
Mouthful is a self-hosted alternative to Disqus.

Mouthful is a lightweight commenting server written in GO and Preact. It's a self hosted alternative

Viktoras 743 Dec 20, 2022
Hammond is a self hosted vehicle management system to track fuel and other expenses related to all of your vehicles.

Hammond is a self hosted vehicle management system to track fuel and other expenses related to all of your vehicles. It supports multiple users sharing multiple vehicles. It is the logical successor to Clarkson which has not been updated for quite some time now.

Akhil Gupta 356 Jan 2, 2023
Self-hosted video-hosting website and video archival manager for Niconico, Bilibili, and Youtube

Self-hosted video-hosting website and video archival manager for Niconico, Bilibili, and Youtube

null 793 Jan 1, 2023
listmonk is a standalone high performance, self-hosted newsletter and mailing list manager with a modern dashboard. Single binary app.

listmonk is a standalone, self-hosted, newsletter and mailing list manager. It is fast, feature-rich, and packed into a single binary. It uses a PostgreSQL database as its data store.

Kailash Nadh 9.2k Jan 1, 2023
Focalboard is an open source, self-hosted alternative to Trello, Notion, and Asana.

Focalboard Like what you see? ?? Give us a GitHub Star! ⭐ Focalboard is an open source, self-hosted alternative to Trello, Notion, and Asana. It helps

Mattermost 14k Jan 9, 2023
listmonk is a standalone, self-hosted, newsletter and mailing list manager

listmonk is a standalone, self-hosted, newsletter and mailing list manager. It is fast, feature-rich, and packed into a single binary. It uses a Postg

Super-Smile 16 Aug 15, 2022
longurl is a self-hosted short url service.

longurl Introduction longurl is a self-hosted short url service. Try It Out curl -H "Content-Type:application/json" -X POST --data '{"url": "https://g

long2ice 44 Oct 24, 2022
A simple web application written in Golang which listens on port 8080

GoWebApp It's a simple web application written in Golang which listens on port 8080 Building It can be build using the command go build -o metricsweba

Viral Kamdar 0 Oct 21, 2021