{"id":20156097,"url":"https://github.com/openfun/ashley","last_synced_at":"2025-04-09T22:20:53.731Z","repository":{"id":37978341,"uuid":"240285164","full_name":"openfun/ashley","owner":"openfun","description":":speech_balloon: A self-hosted multi-tenant discussion forum for learning","archived":false,"fork":false,"pushed_at":"2025-04-09T19:57:14.000Z","size":2520,"stargazers_count":12,"open_issues_count":19,"forks_count":1,"subscribers_count":9,"default_branch":"master","last_synced_at":"2025-04-09T20:43:30.150Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/openfun.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","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":"2020-02-13T14:51:47.000Z","updated_at":"2024-11-25T16:48:32.000Z","dependencies_parsed_at":"2024-02-11T23:21:30.483Z","dependency_job_id":"b8270e8c-d862-46ab-9300-0411d4e418eb","html_url":"https://github.com/openfun/ashley","commit_stats":{"total_commits":264,"total_committers":13,"mean_commits":"20.307692307692307","dds":0.6515151515151515,"last_synced_commit":"5ac5e34633d30aec48190376dc01be385d7b6911"},"previous_names":[],"tags_count":19,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openfun%2Fashley","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openfun%2Fashley/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openfun%2Fashley/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openfun%2Fashley/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/openfun","download_url":"https://codeload.github.com/openfun/ashley/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248111939,"owners_count":21049576,"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-13T23:37:32.915Z","updated_at":"2025-04-09T22:20:53.700Z","avatar_url":"https://github.com/openfun.png","language":"Python","readme":"# Ashley, a self-hosted discussion forum for learning\n\n## Overview\n\n`Ashley` is a forum designed to be integrated into `Learning Management Systems` (LMS).\n\nIt is a multi-tenant service intended to be operated independently. It can be integrated to any LMS (like [Open edX](https://open.edx.org) or [Moodle](https://moodle.org)), thanks to the [LTI](https://en.wikipedia.org/wiki/Learning_Tools_Interoperability) standard.\n\n`Ashley` is built on top of [Django-machina](https://github.com/ellmetha/django-machina/), a powerful forum engine for `Django`.\n\n## Quick preview\n\nHere is an example integration of Ashley in `Open edX`:\n\n![demo](docs/demo.gif)\n\n\n## Contributing\n\nThis project is intended to be community-driven, so please, do not hesitate to\nget in touch if you have any question related to our implementation or design\ndecisions.\n\nWe try to raise our code quality standards and expect contributors to follow\nthe recommandations from our\n[handbook](https://openfun.gitbooks.io/handbook/content).\n\n## License\n\nThis work is released under the MIT License (see [LICENSE](./LICENSE)).\n\n## Getting started\n\nMake sure you have a recent version of Docker and\n[Docker Compose](https://docs.docker.com/compose/install) installed on your laptop:\n\n```bash\n$ docker -v\n  Docker version 18.09.0, build 4d60db4\n\n$ docker-compose --version\n  docker-compose version 1.23.2, build 1110ad01\n```\n\n⚠️ You may need to run the following commands with `sudo` but this can be avoided by assigning your user to the `docker` group.\n\n## Project bootstrap\n\nThe easiest way to start working on the project is to use our `Makefile` :\n\n```bash\n$ make bootstrap\n```\n\nThis command builds the `app` container, installs front-end and back-end dependencies, builds the front-end application and styles, and performs database migrations. It's a good idea to use this command each time you are pulling code from the project repository to avoid dependency-related or migration-related issues.\n\nNow that your Docker services are ready to be used, start the service by running :\n\n```bash\n$ make run\n```\n\nYou should be able to test the forum at [http://localhost:8090/dev/](http://localhost:8090/dev/).\nThis is the development view that emulates a LTI consumer.\n\n## Django admin\n\nYou can access the Django admin site of the forum at [http://localhost:8090/admin/](http://localhost:8090/admin/)\n\nYou first need to create a superuser account. \n\n```bash\n$ make superuser\n```\n\n## Troubleshooting\n\n### ElasticSearch service out with an Exit 137\n\n```bash\n$ docker-compose ps\n```\n\u003e ashley_elasticsearch_1   /docker-entrypoint.sh elas ...   Exit 137\n\nThis is due to a lack of memory.\nN.B. for Mac users, the default Docker's configuration is also 2GB which means that Elasticsearch will automatically exit.\n\nTo fix this issue, you need to upgrade your default configuration. \n\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenfun%2Fashley","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopenfun%2Fashley","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenfun%2Fashley/lists"}