{"id":21409972,"url":"https://github.com/milisp/daner","last_synced_at":"2026-05-17T04:33:27.816Z","repository":{"id":138074037,"uuid":"525302644","full_name":"milisp/daner","owner":"milisp","description":"fastapi async command line manage (eg. create superuser -u username)","archived":false,"fork":false,"pushed_at":"2022-09-18T03:35:12.000Z","size":10,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-23T09:49:08.279Z","etag":null,"topics":["fastapi","fastapi-manage","python3"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/milisp.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":"2022-08-16T08:59:24.000Z","updated_at":"2022-08-16T12:13:58.000Z","dependencies_parsed_at":null,"dependency_job_id":"f031cd6a-0d4e-43d4-b025-4bc3f98eb3c9","html_url":"https://github.com/milisp/daner","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/milisp%2Fdaner","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/milisp%2Fdaner/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/milisp%2Fdaner/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/milisp%2Fdaner/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/milisp","download_url":"https://codeload.github.com/milisp/daner/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243910715,"owners_count":20367538,"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":["fastapi","fastapi-manage","python3"],"created_at":"2024-11-22T17:36:06.483Z","updated_at":"2026-05-17T04:33:22.796Z","avatar_url":"https://github.com/milisp.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# daner\n\n[Github-flavored Markdown](https://guides.github.com/features/mastering-markdown/)\n\n## install\n\n```bash\npip install daner\n```\n\n## example\n\n### simple usage\n\n```python\nfrom daner import dong\n\n# command\n# python manage.py hi --name milisp\n@dong()\nasync def hi(name: str):\n\tprint(name)\n\n\n# command\n# python manage.py hi -u milisp\n# alias u=username\n@dong(alias={\"u\": \"username\"})\nasync def create(username: str):\n\tprint(username)\n\n\n# command\n# python manage.py greet --name milisp\n# if you want to run a sync function\n@dong(sync=True)\ndef greet(name):\n\tprint(name)\n```\n\n### create superuser\n\n```python\n# manage.py\n# createsuperuser\n# $ python manage.py createsuperuser -u username -e email\nfrom daner import dong\nimport databases\nimport getpass\nimport ormar\nimport sqlalchemy\nimport uvicorn\n\nDB_URI = \"sqlite:///fast.db\"\ndatabase = databases.Database(DB_URI)\nengine = sqlalchemy.create_engine(DB_URI)\nmetadata = sqlalchemy.MetaData()\nmetadata.create_all(engine)\n\n\nclass User(ormar.Model):\n\tclass Meta(ormar.ModelMeta):\n\t\tmetadata = metadata\n\t\tdatabase = database\n\n    id = ormar.Integer(primary_key=True)\n    username = ormar.String(max_length=60, unique=True)\n    password = ormar.String(max_length=2048)\n    email = ormar.String(max_length=80, nullable=True, unique=True)\n\n@dong(alias={\"u\": \"username\", \"e\": \"email\"})\nasync def createsuperuser(username: str, email: str = None):\n    await database.connect()\n\tpassword = getpass.getpass(\"password: \")\n    password = \"hashed\" + password\n    await User(\n        username=username,\n        password=password,\n        email=email,\n        is_superuser=True,\n    ).save()\n    await database.disconnect()\n\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmilisp%2Fdaner","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmilisp%2Fdaner","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmilisp%2Fdaner/lists"}