{"id":29796384,"url":"https://github.com/fedora-infra/mote","last_synced_at":"2025-08-24T21:08:56.700Z","repository":{"id":31619482,"uuid":"35184532","full_name":"fedora-infra/mote","owner":"fedora-infra","description":"Python Flask project used to aggregate and distribute IRC meeting minutes and logs for the Fedora Project","archived":false,"fork":false,"pushed_at":"2025-07-14T08:04:08.000Z","size":4968,"stargazers_count":31,"open_issues_count":29,"forks_count":47,"subscribers_count":23,"default_branch":"main","last_synced_at":"2025-07-14T11:22:22.488Z","etag":null,"topics":["flask","flask-application","hacktoberfest","irc","meeting-minutes","python","python-flask","python3"],"latest_commit_sha":null,"homepage":"https://meetbot.fedoraproject.org","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fedora-infra.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","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,"zenodo":null}},"created_at":"2015-05-06T21:45:06.000Z","updated_at":"2025-07-14T08:03:59.000Z","dependencies_parsed_at":"2023-10-02T04:22:12.106Z","dependency_job_id":"d2e8df74-5df4-4eb8-b09f-e383938506f8","html_url":"https://github.com/fedora-infra/mote","commit_stats":null,"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/fedora-infra/mote","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fedora-infra%2Fmote","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fedora-infra%2Fmote/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fedora-infra%2Fmote/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fedora-infra%2Fmote/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fedora-infra","download_url":"https://codeload.github.com/fedora-infra/mote/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fedora-infra%2Fmote/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267464522,"owners_count":24091505,"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","status":"online","status_checked_at":"2025-07-28T02:00:09.689Z","response_time":68,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["flask","flask-application","hacktoberfest","irc","meeting-minutes","python","python-flask","python3"],"created_at":"2025-07-28T05:08:38.301Z","updated_at":"2025-07-28T05:08:38.987Z","avatar_url":"https://github.com/fedora-infra.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Mote 2.0 (Meetbot Logs 2.0)\n\nMote (or Meetbot Logs) is a web service that aggregates and distributes summaries, minutes and logs of meetings\nthat takes place in an [IRC](https://en.wikipedia.org/wiki/Internet_Relay_Chat) or \n[Matrix](https://en.wikipedia.org/wiki/Matrix_(protocol)) channel for the Fedora Project.\n\n## Features\n\nThe web service has the following features\n\n- Chronological lookup of meeting summaries, minutes and logs using an interactive calendar view\n- Snappier loading up of content due to application-like interface and behaviour of the web service\n- Channel-wise and date-wise distinction of meeting summaries, minutes and logs within modals\n- Faster intuitive search of meeting summaries, minutes and logs using asynchronous fetching\n\n## Dependencies\n\n### Frontend\n\n- [Bootstrap 5](https://getbootstrap.com/docs/5.0/getting-started/introduction/)\n- [Bootstrap Dark Mode](https://vinorodrigues.github.io/bootstrap-dark-5/)\n- [Easy QR Code 4](https://github.com/ushelp/EasyQRCodeJS)\n- [Font Awesome 5](https://fontawesome.com)\n- [FullCalendar 5](https://fullcalendar.io/)\n- [jQuery 3](https://jquery.com/)\n- [Socket.IO 4](https://socket.io/)\n\n### Backend\n\n- [Beautiful Soup 4](https://www.crummy.com/software/BeautifulSoup/bs4/doc/)\n- [Fedora Messaging 3](https://fedora-messaging.readthedocs.io/en/stable/)\n- [Flask 2](https://flask.palletsprojects.com/)\n- [Flask Caching 2](https://flask-caching.readthedocs.io/en/latest/)\n- [Flask SocketIO 5](https://flask-socketio.readthedocs.io/en/latest/)\n- [Gevent 21](http://www.gevent.org/)\n- [Gunicorn 20](https://gunicorn.org/)\n- [Redis 4](https://github.com/redis/redis-py)\n- [Requests 2](https://requests.readthedocs.io/en/latest/)\n\n### Development\n\n- [Black 21](https://black.readthedocs.io/en/stable/)\n- [Flake8 3](https://flake8.pycqa.org/en/latest/)\n- [Isort 5](https://pycqa.github.io/isort/)\n- [Poetry](https://python-poetry.org/)\n- [Pytest 6](https://docs.pytest.org/en/7.1.x/)\n- [Tox 3](https://tox.wiki/en/latest/index.html)\n\n## Setup\n\n### Preliminary setup\n\n1. Fork the repository.\n   ```\n   https://github.com/fedora-infra/mote\n   ```\n2. Clone the forked repository to your local storage.\n   ```\n   $ git clone git@github.com:\u003cusername\u003e/mote.git\n   ```\n3. Navigate into the cloned repository.\n   ```\n   $ cd mote\n   ```\n4. Depending on the kind of approach required, follow either of the below sections.\n\n### Containerized setup\n\n1. Install [Podman](https://podman.io/getting-started/installation) on Fedora Linux.\n   ```\n   $ sudo dnf install podman\n   ```\n2. Download meeting logs in the directory of the cloned repository.\n\n   - To download logs from a specific channel, append the channel name to the URL. For instance, for the \"fedora-meeting\" channel, use https://meetbot-raw.fedoraproject.org/fedora-meeting/.\n   ```\n   $ wget -r -P \"./meetbot\" -nH -R \"index.html,robots.txt\" -A \".html,.txt\" https://meetbot-raw.fedoraproject.org/\n   ```\n3. Build the container image.\n   ```\n   $ podman build -t mote .\n   ```\n4. Start the development server on an IPv4 address and on port 9696.\n   ```\n   $ podman run -it --rm -p 9696:9696 -v ./meetbot:/srv/web/meetbot:Z -v ./mote:/opt/app/mote:Z mote\n   ```\n\n### Native setup\n\n1. Install [Python 3](https://www.python.org/), [Virtualenv](https://virtualenv.pypa.io/en/latest/) and [Poetry](https://python-poetry.org/) on Fedora Linux.\n   ```\n   $ sudo dnf install python3 python3-virtualenv poetry\n   ```\n2. Download meeting logs in the `/srv/web` directory.\n\n   - To download logs from a specific channel, append the channel name to the URL. For instance, for the \"fedora-meeting\" channel, use https://meetbot-raw.fedoraproject.org/fedora-meeting/.\n   ```\n   $ sudo mkdir -p /srv/web\n   $ sudo chown $USER /srv/web\n   $ wget -r -P \"/srv/web/meetbot\" -nH -R \"index.html,robots.txt\" -A \".html,.txt\" https://meetbot-raw.fedoraproject.org/\n   ```\n3. Create and activate the virtual environment.\n   ```\n   $ virtualenv venv\n   $ source venv/bin/activate\n   ```\n4. Install the defined packages from the Python project configuration file.\n   ```\n   $ (venv) poetry install\n   ```\n5. Start the development server on an IPv4 address and on port 9696.\n   ```\n   $ (venv) mote -p 9696 -4\n   ```\n\n## Accessing\n\nThe project is be served on http://localhost:9696/ and with appropriate firewall rules, it should be accessible to the devices connected to the same network.\n\n## Contributing\n\nFolks can contribute to the project by the following means\n\n- Writing [documentation](https://github.com/fedora-infra/mote/blob/main/README.md) to better explain the functionality and development of the web service\n- Testing out the [newly staged versions](https://meetbot.stg.fedoraproject.org/) of the web service and reporting bugs on the [issue tracker](https://github.com/fedora-infra/mote/issues).\n- Collaborating with the [Fedora Websites and Apps Team](https://docs.fedoraproject.org/en-US/websites/) to discuss about new features and advancements.\n- Opening [pull requests](https://github.com/fedora-infra/mote/pulls) to the repository to address existing issues available on the [issue tracker](https://github.com/fedora-infra/mote/issues).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffedora-infra%2Fmote","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffedora-infra%2Fmote","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffedora-infra%2Fmote/lists"}