{"id":21662861,"url":"https://github.com/ktravis/tinyforum","last_synced_at":"2026-04-12T14:36:07.995Z","repository":{"id":10045081,"uuid":"12091771","full_name":"ktravis/tinyforum","owner":"ktravis","description":"A small clojure forum, written with Noir","archived":false,"fork":false,"pushed_at":"2013-08-26T07:07:35.000Z","size":9096,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-25T07:27:33.713Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"tinyforum.herokuapp.com","language":"CSS","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/ktravis.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}},"created_at":"2013-08-13T20:13:40.000Z","updated_at":"2014-02-07T15:47:08.000Z","dependencies_parsed_at":"2022-08-30T14:02:00.815Z","dependency_job_id":null,"html_url":"https://github.com/ktravis/tinyforum","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ktravis%2Ftinyforum","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ktravis%2Ftinyforum/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ktravis%2Ftinyforum/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ktravis%2Ftinyforum/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ktravis","download_url":"https://codeload.github.com/ktravis/tinyforum/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244560373,"owners_count":20472219,"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":[],"created_at":"2024-11-25T10:18:26.036Z","updated_at":"2025-12-31T00:07:39.895Z","avatar_url":"https://github.com/ktravis.png","language":"CSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"tinyforum\n=========\n\n###Working demo: [TinyForum](http://tinyforum.herokuapp.com)\n\nAbout\n-----\nTinyForum is a [Noir](http://webnoir.org)-based, \"light-weight\" forum system written in Clojure.\n\nThe project was intended to be extremely minimal, an exercise for learning Noir,\nbut it quickly exceeded the expectated feature set (and size.) It was heavily\ninspired by [ForumFive](http://github.com/Xeoncross/forumfive) and borrows the\nsame structure and style, though in the interest of being more robust it weighs\nin at \u003c 5 MB total, rather than 5 kB. \n\nTinyForum uses the [Redis](http://redis.io) key-value system to store user\ninformation and posts (via [aleph](https://github.com/ztellman/aleph)), with session-based authentication through Noir. [Markdown](http://daringfireball.net/projects/markdown/) is used for static site configuration, and parsing post and comment contents.\n\nTwitter Bootstrap is used for styling, and the awesome\n[SyntaxHighlighter!](http://alexgorbatchev.com/SyntaxHighlighter/)\n\nSetup\n-----\nThe simplest way to get started is with [Heroku](http://heroku.com), using an addon\nsuch as [rediscloud](http://redis-cloud.com) or [redistogo](http://redistogo.com) to provide storage hosting. Otherwise, you can run a development version easily from your own machine, or a Vagrant vm.\n\n####Without Heroku\nClone down this repo: `git clone https://github.com/ktravis/tinyforum`, and `cd`\ninto it. Install [Leiningen](http://leiningen.org) (v2.0.0 or greater) and run\n`lein deps` to pull down project dependencies. Make sure you have a redis-server\nup -- if not on the default port, follow the instructions below to configure.\nThe standard settings look for a redis server on localhost:6379 with no\npassword.\n\nNow `lein run`, and you should be able to view your forum at `localhost:8080`,\nas specified by the console output.\n\n####Heroku\nAs above, clone down the repo and navigate to its root folder. Set up a new\nHeroku app with `heroku apps:create` (assuming you have an account and the\nheroku toolbelt set up.) Choose a redis provider, and add it to your app from\nthe Heroku dashboard, or `heroku addons:add redistogo:nano`. Wait about\na minute, and get your redis configuration: `heroku config | grep REDISTOGO_URL`\nYou should see something of the form redis://redistogo:PASSWORD@URL:PORT/. You\nwill need to edit the file `tinyforum/src/tinyforum/models/client.clj` so that\nit reads:\n\n```clojure\n(ns tinyforum.models.client\n     (:use [aleph.redis :only (redis-client)]))\n\n(def redis-host \"URL\")\n(def redis-password \"PASSWORD\")\n(def redis-port PORT)\n\n(def r (delay (redis-client \n  {:host redis-host\n   :port redis-port\n   :password redis-password})))\n```\n\nWith the variable definitions in caps using the config parameters previously obtained.\n\nThen simply `git add .; git commit -m \"redis params\"; git push heroku master` to\nsend your files to the Heroku server. The first build process could take\na while, so be patient. When it ends, you should be presented with a url\n(something like `peaceful-ocean-4289.herokuapp.com`) with your forum ready to\ngo!\n\nCustomization\n-------------\nOnce you're on the site, visit the login page to register a new account. To\npromote your account to administrator, log out, and re-register with the\nusername \"test@test.com\" (unless you changed the default admin in\nmodels/users.clj.) Then visit `/manage` on the forum, and promote your\npreviously created account. From the `/manage` page as an administrator, you may\nchange the site masthead, the main page title and description, the faq page, and\nthe footer. All except the masthead and title use\n[Markdown](http://daringfireball.net/projects/markdown/) (via\n[markdown-clj](https://github.com/yogthos/markdown-clj)) for formatting.\nAdministrators may all change these settings, as well as demote or delete other\nuser accounts, and remove topics and comments (or edit topics.)\n\nLicense\n-------\nCopyright (C) 2013 Kyle Travis, all under the [MIT\nLicense](http://ktravis.mit-license.org).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fktravis%2Ftinyforum","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fktravis%2Ftinyforum","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fktravis%2Ftinyforum/lists"}