adding some documentation
This commit is contained in:
@@ -1,9 +1,12 @@
|
||||
# Amsterdam Web Communities System
|
||||
|
||||
Amsterdam is a system allowing for the hosting of multiple virtual communities, each with services such as conferencing. A user on
|
||||
an Amsterdam site may join multiple virtual communities on that site.
|
||||
|
||||
## Why "Amsterdam"?
|
||||
|
||||
The first implementation of this concept was in Durand Communications' CommunityWare software, which was code-named "Rome" when it
|
||||
was in development. Rome was a center of community in the andient world.
|
||||
was in development. Rome was a center of community in the ancient world.
|
||||
|
||||
The second implementation was the Java code I wrote to rescue Electric Minds; I named it "Venice," which was a center of community
|
||||
during the Renaissance.
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
# Future Directions for Amsterdam
|
||||
|
||||
After the point where it reaches feature parity with Venice circa 2006.
|
||||
|
||||
## Immediate Cleanups Required
|
||||
|
||||
* A better way to set up the database than `setup/database.sql`. Bring the table setup into the application somehow.
|
||||
The [migrate](https://github.com/golang-migrate/migrate) library might be of use here.
|
||||
* Either implement the Calendar and Chat, or take those menu entries out.
|
||||
* For Chat, if it's implemented, it should use XMPP.
|
||||
* Implement proper help and online documentation.
|
||||
|
||||
## Additional Items
|
||||
|
||||
* Decouple from MySQL, introduce other database support. Postgres and SQLite are the two priorities here.
|
||||
* Fix password storage. Straight SHA-1 hashes aren't gonna cut it. There are better ways.
|
||||
* Introduce OAuth authentication? (Related to above)
|
||||
* Post storage - replace "limited" HTML with Markdown.
|
||||
* A proper API for the system.
|
||||
* Figure out how to interlink Amsterdam instances. ActivityPub in some fashion?
|
||||
@@ -163,6 +163,7 @@ func (c *Community) HostQ() *User {
|
||||
return u
|
||||
}
|
||||
|
||||
// LanguageTag returns the tag for the community's language.
|
||||
func (c *Community) LanguageTag() (*language.Tag, error) {
|
||||
if c.Language == nil {
|
||||
return nil, nil
|
||||
|
||||
Reference in New Issue
Block a user