{"id":28303726,"url":"https://github.com/sauberr/anonymous-note-service","last_synced_at":"2026-05-03T22:32:43.103Z","repository":{"id":291281292,"uuid":"942140008","full_name":"Sauberr/anonymous-note-service","owner":"Sauberr","description":null,"archived":false,"fork":false,"pushed_at":"2025-05-08T17:25:12.000Z","size":217,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-09-18T14:22:04.972Z","etag":null,"topics":["alembic","fastapi","postgresql","pydantic","python"],"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/Sauberr.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-03-03T16:30:30.000Z","updated_at":"2025-05-08T17:25:16.000Z","dependencies_parsed_at":"2025-09-18T13:58:36.063Z","dependency_job_id":"fe40104a-5642-4cde-94c5-8935fa2bb78b","html_url":"https://github.com/Sauberr/anonymous-note-service","commit_stats":null,"previous_names":["sauberr/anonymous-note-service"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Sauberr/anonymous-note-service","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sauberr%2Fanonymous-note-service","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sauberr%2Fanonymous-note-service/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sauberr%2Fanonymous-note-service/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sauberr%2Fanonymous-note-service/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Sauberr","download_url":"https://codeload.github.com/Sauberr/anonymous-note-service/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sauberr%2Fanonymous-note-service/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32587818,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-03T22:12:39.696Z","status":"ssl_error","status_checked_at":"2026-05-03T22:09:10.534Z","response_time":103,"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":["alembic","fastapi","postgresql","pydantic","python"],"created_at":"2025-05-23T23:11:39.723Z","updated_at":"2026-05-03T22:32:43.070Z","avatar_url":"https://github.com/Sauberr.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"### 📝 Anonymous Note Service\n\nAnonymous Note Service is a modern web platform that allows users to create and share notes anonymously. Users can choose to make their notes temporary — with automatic expiration after a set time — or persistent, remaining available until manually deleted. Each note can optionally include an image, offering a flexible and expressive way to communicate.\n\nThe backend is built with FastAPI, ensuring high performance and scalability. Localization support is provided by fastapi-babel, making the service accessible to a global audience. User authentication is handled securely using fastapi-users and OAuth2, supporting both traditional and social logins.\n\nThe platform leverages PostgreSQL for robust relational data storage. For asynchronous and scheduled background tasks — such as note expiration — the APScheduler library is utilized, ensuring timely and efficient task execution. Administration is streamlined with a custom admin panel built using SQLAdmin, providing powerful tools to manage users and content.\n\nDevelopment and dependency management are optimized with Poetry, replacing pip for better reproducibility and convenience. The application is deployed with Gunicorn, delivering fast response times and efficient resource usage.\n\nFor comprehensive testing coverage, we use pytest. This tool is chosen due to its simplicity, flexibility, and popularity within the Python community. Pytest allows us to ensure code quality and reliability, as all core features and endpoints are covered by automated tests. This results in a more robust and maintainable application.\n\nTo ensure portability and ease of deployment, the entire application runs inside Docker containers, enabling consistent environments across development, testing, and production.\n\nOverall, Anonymous Note Service offers a secure, scalable, and user-friendly environment for anonymous sharing, combining a thoughtful tech stack with modern best practices in Python web development.\n\n\n## Stack:\n\n- [Python](https://www.python.org/downloads/)\n- [PostgreSQL](https://www.postgresql.org/)\n- [FastApi](https://fastapi.tiangolo.com/)\n- [Docker](https://www.docker.com/)\n\n## Local Developing\n\nAll actions should be executed from the source directory of the project and only after installing all requirements.\n\n1. Firstly, create and activate a new virtual environment and install dependencies with Poetry:\n   ```bash\n   poetry install\n   ```\n\n2. Run database migrations using Alembic:\n   ```bash\n   alembic upgrade head\n   ```\n   \n## Docker\n   ```bash\n   docker build .\n   \n   docker-compose up\n   ```\n\n## License\n\nThis project uses the [MIT] license(https://github.com/Sauberr/anonymous-note-service/blob/master/LICENSE)\n\n## Contact \n\nTo contact the author of the project, write to email 𝚍𝚖𝚒𝚝𝚛𝚒𝚢𝚋𝚒𝚛𝚒𝚕𝚔𝚘@𝚐𝚖𝚊𝚒𝚕.𝚌𝚘𝚖.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsauberr%2Fanonymous-note-service","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsauberr%2Fanonymous-note-service","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsauberr%2Fanonymous-note-service/lists"}