GithubHelp home page GithubHelp logo

go-saloon / saloon-legacy Goto Github PK

View Code? Open in Web Editor NEW
85.0 7.0 8.0 1.18 MB

A place to chat and communicate: a buffalo forum

License: BSD 3-Clause "New" or "Revised" License

Go 67.92% CSS 0.14% JavaScript 2.59% HTML 28.48% Dockerfile 0.87%
golang buffalo buffalo-framework forum saloon database

saloon-legacy's Introduction

Saloon (legacy)

Build Status GoDoc

Saloon is a Work in Progress forum based on Buffalo. This particular repository houses the legacy saloon which is no longer maintained.

See saloon for a newer saloon in working condition.

Database setup

One needs a database to run saloon. Here is an example, running postgres inside a docker container:

$> docker run --name saloon-postgres -e POSTGRES_PASSWORD=postgres -p 5432:5432 -d postgres

Create Your Databases

Ok, so you've edited the "database.yml" file and started postgres, now Buffalo can create the databases in that file for you:

$> buffalo db create -a
v4.2.0

created database saloon-test
created database saloon-prod
created database saloon-dev

You can run saloon to initialize the forum and the content of its database:

$> saloon migrate
> create_users
> create_categories
> create_topics
> create_replies
> create_forums

0.6591 seconds

$> saloon t db:setup
DEBU[2018-03-20T15:39:44+01:00] INSERT INTO users (admin, avatar, created_at, email, full_name, id, password_hash, subscriptions, updated_at, username) VALUES (:admin, :avatar, :created_at, :email, :full_name, :id, :password_hash, :subscriptions, :updated_at, :username)
DEBU[2018-03-20T15:39:44+01:00] INSERT INTO forums (created_at, description, id, logo, title, updated_at) VALUES (:created_at, :description, :id, :logo, :title, :updated_at)

The db:setup task created an admin user with (by default) a password admin. You change that!

Starting the Application

Buffalo ships with a command that will watch your application and automatically rebuild the Go binary and any assets for you. That's useful when developing on saloon. To do that run the "buffalo dev" command:

$> buffalo dev

If you point your browser to http://127.0.0.1:3000 you should see a "Welcome to the Saloon Forum" page.

In production, one can instead directly run the saloon executable:

$> saloon
INFO[0000] Starting application at 127.0.0.1:3000
INFO[2018-03-20T15:40:31+01:00] Starting Simple Background Worker
[...]

Screenshots

Welcome page

00-home

Register a new user

01-register

Logged in

02-logged

Create a category

03-create-category 04-create-category-ok

Create a topic

05-create-topic 06-create-topic

Reply to a topic

07-reply 08-reply

Topics

09-topics

User settings

10-users-settings

saloon-legacy's People

Contributors

sbinet avatar soypat avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

saloon-legacy's Issues

saloon: floating footer prevents from interacting with html page

the floating footer in application.html:

		<footer class="footer text-center fixed-bottom">
			<div>
				<ul class="list-inline">
					<li class="text-muted">Saloon &copy; 2018</li>
				</ul>
			</div>
		</footer>

prevents from interacting with the html page in some cases (when it's floating over a button for example.)

remove it or make it stick at the bottom.

pop support moved error when creating db

ERRO[0001] Pop support has been moved to the https://github.com/gobuffalo/buffalo-pop plugin.

!! PLEASE READ PLUGIN DOCUMENTATION - https://gobuffalo.io/en/docs/plugins

Buffalo Plugins Installation*:

        $ buffalo plugins install github.com/gobuffalo/buffalo-pop

Steps to fix?

saloon: add support for themes

it should be possible to customize the look and feel of a saloon without having to fork saloon.

  • default color,
  • default logo,
  • default favicon,
  • default welcome message,
  • ... ?

saloon: add default categories

it should be possible to define default categories:

  • categories to which new users are automatically subscribed to,
  • categories which people can't unsubscribe to.

saloon: improve user-registration process with email-confirmation

we should make sure the email associated with a username is:

  • a valid one
  • controlled by the user on the other end to prevent unwanted spam.

therefore, we should create new users in a "blocked", "unactivated" state until a secret link sent to the user by email is clicked (or some secret passphrase is entered in a dedicated form.)

we should make sure we don't send emails to unactivated users.

saloon: add edit-reply

we need to be able to edit a reply (to correct for typos and such.)
we'd also need to display that it's been edited.

saloon: add ability to upload files within posts

right now, because we are using markdown, it's possible to add links to web-visible files and images.

it should be possible to upload files within posts.

considerations:

  • storage: inside the db or out-of-band? (ie: under some /uploads directory)
  • clean-up, garbage collection: we need a mechanism to be able to reclaim garbage. probably a side-table where the path to the file is stored, the author-id and the post-id referencing that file.

saloon: add web app notifications

right now, notifications are sent by emails only.

it should be possible to receive them also via the web app when we are logged in and online/connected to the saloon.

Privacy directives

There is a discussion on Hugo about how you need to adapt your web sites for the EU directives hitting everyone.

Saloon should take it into account. Mostly related to cookies and ability to wipe a users data.

saloon: add support for vgo

the dust hasn't settled yet on whether vgo will be the Go-wide packaging tool.
there are strong indications that it might be though.

we should prepare for it.

saloon: add edit-topic

we need to be able to edit a topic (to correct for typos and such.)
we'd also need to display that it's been edited.

saloon/mailers: add support for reply-to from emails

right now, it's not possible to reply to an email notification.

one has to click on the click here button that directs us to the topic from which the notification is originated.

we should allow for people to directly reply to the email notification, adding the comment/reply for them in the topic discussion.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.