{"id":22816449,"url":"https://github.com/andreped/postly","last_synced_at":"2026-04-30T01:38:21.884Z","repository":{"id":267699352,"uuid":"871925659","full_name":"andreped/postly","owner":"andreped","description":":hugs: Simple twitter clone implemented in streamlit","archived":false,"fork":false,"pushed_at":"2024-10-14T19:53:40.000Z","size":716,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-02-06T20:38:25.888Z","etag":null,"topics":["app","clone","demo","huggingface","media","platform","python","social","spaces","streamlit","twitter","web"],"latest_commit_sha":null,"homepage":"https://huggingface.co/spaces/andreped/postly","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/andreped.png","metadata":{"files":{"readme":"README.md","changelog":null,"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":"2024-10-13T10:33:50.000Z","updated_at":"2024-10-14T19:54:36.000Z","dependencies_parsed_at":"2024-12-11T22:45:17.974Z","dependency_job_id":"21cae0ea-c61e-452b-ab68-9841c539f225","html_url":"https://github.com/andreped/postly","commit_stats":null,"previous_names":["andreped/postly"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/andreped/postly","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andreped%2Fpostly","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andreped%2Fpostly/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andreped%2Fpostly/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andreped%2Fpostly/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/andreped","download_url":"https://codeload.github.com/andreped/postly/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andreped%2Fpostly/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32451480,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-29T22:27:22.272Z","status":"ssl_error","status_checked_at":"2026-04-29T22:10:49.234Z","response_time":110,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["app","clone","demo","huggingface","media","platform","python","social","spaces","streamlit","twitter","web"],"created_at":"2024-12-12T14:07:36.925Z","updated_at":"2026-04-30T01:38:21.867Z","avatar_url":"https://github.com/andreped.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"---\ntitle: 'Postly: a simple twitter clone'\ncolorFrom: indigo\ncolorTo: indigo\nsdk: streamlit\nsdk_version: '1.39.0'\npython_version: '3.10'\napp_port: 7860\nemoji: 🫁\npinned: false\nlicense: mit\napp_file: app.py\n---\n\n# Postly\n\n[![license](https://img.shields.io/github/license/DAVFoundation/captain-n3m0.svg?style=flat-square)](https://github.com/andreped/postly/blob/main/LICENSE.md)\n\u003ca target=\"_blank\" href=\"https://huggingface.co/spaces/andreped/postly\"\u003e\u003cimg src=\"https://img.shields.io/badge/🤗%20Hugging%20Face-Spaces-yellow.svg\"\u003e\u003c/a\u003e\n\nThis repository contain the Postly client, which serves as a micro-message communication platform, similar to Twitter.\n\nTo access the live demo, click on the `Hugging Face` badge above. Below is a snapshot of the current state of the demo app.\n\n\u003cimg width=\"1400\" alt=\"Screenshot\" src=\"assets/streamlit-app-demo.png\"\u003e\n\n## Getting started\n\nInstall dependencies:\n```\npip install -r requirements.txt\n```\n\nRun streamlit app:\n```\nstreamlit run app.py\n```\n\n## Testing\n\nFor this project, we perform continuous integration to make sure that code is tested and formatted appropriately:\n\n| Build Type | Status |\n| - | - |\n| **Unit tests** | [![CI](https://github.com/andreped/postly/workflows/Tests/badge.svg)](https://github.com/andreped/postly/actions) |\n| **Check file size** | [![CI](https://github.com/andreped/postly/workflows/Check%20file%20size/badge.svg)](https://github.com/andreped/postly/actions) |\n| **Unit tests** | [![CI](https://github.com/andreped/postly/workflows/Deploy/badge.svg)](https://github.com/andreped/postly/actions) |\n\nTo perform unit tests, you need to install `pytest`. For running formatting checks you also need `flake8`, `isort`, and `black`. We also depend on `pydantic` for type validation. To do so, lets configure a virtual environment:\n```\npython -m venv venv/\nsource venv/bin/activate\n\npip install -r requirements.txt\n```\n\nThen run this command to perform unit tests:\n```\npytest -v tests/\n```\n\nTo perform formatting checks, run the following:\n```\nsh shell/lint.sh\n```\n\n## License\n\nThis project has MIT license.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandreped%2Fpostly","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fandreped%2Fpostly","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandreped%2Fpostly/lists"}